1. 首页
  2. 资讯

旅行售货员问题 回溯 java

lingo旅行售货员问题最后回到终点
MODEL:SETS:city/A1..A8/:U;links(city,city):distance,X;ENDSETSDATA: distance=0 300 360 210 590 475 500 690300 0 380 270 230 285 2

旅行售货员问题 回溯 java

lingo旅行售货员问题最后回到终点

MODEL:SETS:city/A1..A8/:U;links(city,city):distance,X;ENDSETSDATA: distance=0 300 360 210 590 475 500 690300 0 380 270 230 285 200 390 360 380 0 510 230 765 580 770210 270 510 0 470 265 450 640590 230 230 370 0 515 260 450475 285 765 265 515 0 460 650500 200 580 450 260 460 0 190690 390 760 640 450 650 190 0;ENDDATAn=@SIZE(city);MIN=@SUM(links:distance*X);@FOR(city(k):@SUM(city(i)|i#ne#k:x(i,k))=1;@SUM(city(j)|j#ne#k:x(k,j))=1;@FOR(city(j)|j#gt#1 #and# j#ne#k:U(j)>=U(k)+X(k,j)-(N-2)*(1-X(k,j))+(N-3)*X(j,k)););@FOR(links:@BIN(x));@FOR(city(k)|k#gt#1:U(k)<=N-1-(N-2)*X(1,k);U(k)>=1+(N-2)*X(k,1));END

Java问题,Java问题

Java的产生 Java来自于Sun公司的一个叫Green的项目,其原先的目的是为家用消费电子产品开发一个分布式代码系统,这样我们可以把E-mail发给电冰箱、电视机等家用电器,对它们进行控制,和它们进行信息交流。

开始,准备采用C++,但C++太复杂,安全性差,最后基于C++开发一种新的语言Oak(Java的前身),Oak是一种用于网络的精巧而安全的语言,Sun公司曾依此投标一个交互式电视项目,但结果是被SGI打败。

可怜的Oak几乎无家可归,恰巧这时MarkArdreesen开发的Mosaic和Netscape启发了Oak项目组成员,他们用Java编制了HotJava浏览器,得到了Sun公司首席执行官ScottMcNealy的支持,触发了Java进军Internet。

Java的取名也有一个趣闻,有一天,几位Java成员组的会员正在讨论给这个新的语言取什么名字,当时他们正在咖啡馆喝着Java(爪哇)咖啡,有一个人灵机一动说就叫Java怎样,得到了其他人的赞赏,于是,Java这个名字就这样传开了。

Java包含了一种计算机编程语言和一个平台。

*Java编程语言是一种高级语言。

由Sun微系统公司发布,并作为一种开放的标准进行提供。

*Java平台包括了Java虚拟机和Java应用程序接口(API)。

Java将原程序编译成字节码(bytecode),并通过Java虚拟机(JVM)解释字节码的方式来执行。

因为这种运行方式,只要针对不同的计算机平台准备相应的Java虚拟机,就可以很方便的实现Java语言的跨平台性。

因此,Java非常适合于企业网络和Internet环境,现在已成为Internet中最受欢迎、最有影响的编程语言之一。

Java有许多值得称道的优点,如简单、面向对象、分布式、解释性、可靠、安全、结构中立性、可移植性、高性能、多线程、动态性等。

Java的主要应用有如下几点: *利用浏览器中的Java虚拟机运行于客户端的Applet。

*利用本地虚拟机运行的Java应用程序,通常利用Swing或SWT等来编写跨平台的GUI界面系统。

*通过编写Servlet/JSP来提供网络服务,运行于网络应用程序服务器中。

*利用嵌入式Java虚拟机运行于手机等移动设备的Java应用程序,使用J2ME API。

在java中java.lang.NullPointerException一般是哪的问题啊

空指针 java.leng.NullPointerException 常见的几种原因是:1.对象未初始化而直接引用对象值或者方法。

2.对象引用已经不存在或者被JDBC关闭。

一个经典的例子是JDBC connection已经关闭,ResultSet对象仍然被使用中,这个时候NullPointerException就被抛出。

3.违反某些Java容器的限制,读写Null 值。

4.例如 java.util.HashTable,它不接受Null 作为Key或者Value,如果试图用Null作为Key去读取HashTable将会得到NullPointerException。

Java NullPointerException做为Java Runtime 异常,在开发中减少这样错误的发生就是对代码完成Junit的单元测试,对于一些重要的代码要提高code review的次数从而提高代码质量。

Java问题 Java

java字符串 ,如果在常量池,. 比如 "abc"=='abc' 都指向了常量池里的同一个地址, 所以返回ture 但是一般不推荐使用 == 判断字符串相等,而是用equals 方法 .下面看参考代码1234567891011121314151617181920212223 publicclassMyTest {// 测试类 publicstaticvoidmain(String[] args) { String s="123"; String s1="123"; String s2=newString("123"); Integer i = newInteger(123); System.out.println("123"=="123");// true System.out.println(s=="123");//true System.out.println(s==s1);//true System.out.println(i.toString()=="123");//false System.out.println("123"==s2);//false System.out.println(s==s2);//false System.out.println(i.toString().equals("123"));//true System.out.println(s.equals(s2));//true // 使用== 很多时候得到的是false ,因为比较的是地址值 // 使用equals方法, 得到的都是true ,因为是比较字符串的内容 }}

java编程问题importjava.io.*;importja

java程序是顺序执行的,你的output.close();这条语句写的位置不对,对于文件的写入流还没有结束你就已经在文件中向外读取数据了,这样读出来肯定是错误的,所以要将这条语句提前到Scanner input=new Scanner(file);这条语句之前,在写入文件操作结束,文件内的内容固定了再去读取,这样才会有正确的结果,还有,你下面写的numSort(int[] num)这个排序方法也是错误的,我自己在你的程序上写了一个冒泡的排序法,下面是我改好的程序,测试运行是正确的。

import java.io.*; import java.util.*; public class AA{ public static void main(String[] args) throws Exception{ File file=new java.io.File("Exercise8_22.txt"); PrintWriter output=new PrintWriter(file); for(int i=0;ioutput.print((int)(Math.random()*1000)+" "); } output.close(); Scanner input=new Scanner(file); int[] num=new int[100]; int j=0; while(input.hasNext()){ num[j]=input.nextInt(); j++; } AA.numSort(num); for(int i=0;iif((i+1)%10==0) System.out.println(num[i]+" "); else System.out.print(num[i]+" "); } input.close(); } public static void numSort(int[] num) { for(int i=99;i>=1;i--) { for(int j=0;j{ if(num[j]>num[j+1]) { int temp=num[j]; num[j]=num[j+1]; num[j+1]=temp; } } } } }

java 问题

第一个问题:如果直接用数字赋值就可以这样写,但是范围要在变量类型的范围之内如果超过了就要强制类型转换比如:byte a = 235465;这样写就错了,因为235465这个数字的范围超过了byte规定的范围,正确:byte a = (byte)235465;第二个问题:"回收无用的类对象使用关键字free 这句话错在哪"这句话错了,因为Java里面的无用对象是自动回收的,你不能知道什么时候它会回收,定义free方法只能说建议回收但不一定会回收第三个问题:因为StringBuffer是可变字符串,s.append(“there”)是在hello后面加一个there字符串a指向的字符串就变成“hellothree”;equals(“False”))意思说a指向的字符串是不是与“False”相同比较的是对象(因为字符串已经重写了equalse方法需要注意的是equalse方法默认情况下比较的是对象引用与“==”相同)第四个问题:double f(int x, int y) 这里是重载了父类的f方法 如果父类中的f方法是这样写的double f(double x, double y)话,就是重写父类的方法(重写是与父类中的方法,方法返回值,方法参数都要相同)第五个问题:A 应该是赋值运算符啊第六个问题:数组里面要知道数据的长度是用length第七个问题:两个都错的,第二个判断题原因:因为表示一个对象的不同就是根据属性的不同,就像每个人一样的,每个人都有不同的属性第八个问题:应该可以的...

Java问题求解

}class&nbsp.name.equals(&quot.out;it.remove();= name;public main"();parkingTickets.util.ArrayList;import java;));System.println(parkingTickets).util.AbstractList$Itr.以达到;while (it.hasNext()){ParkingTicket ticket =&nbsp.next(Unknown void void (ticket;));parkingTickets.util.ConcurrentModificationException}System;Source)at IteratorDemo;thread &nbsp, 你可以在做判断之后,直接调用it你在用iterator遍历原list的时候.println(parkingTickets);}@Overridepublic&nbsp.java:14) iterator借口内部只有一个remove()方法.checkForComodification(Unknown&nbsp.out.println("will from java.util;parkingTickets.add(ticket); //java;if class IteratorDemo{public ));parkingTickets:27)at IteratorDemo;&nbsp.add(new ParkingTicket("3"===============");System, for/while 循环遍历无法对list本身进行删除的作用;current parkingTicket IteratorDemo().addTicket();}public ParkingTicket> it =&nbsp. import java;parkingTickets 2")).addTicket(IteratorDemo.java;&quot.remove()将当前对象从list中删除;ParkingTicket{String&nbsp.name&nbsp.main(IteratorDemo;it.next().out;parkingTickets.iterator();Iteratorremove String&nbsp, 是不可以对原list做任何增删改操作;addTicket(){ArrayList<ParkingTicket&gt. 你的程序在运行时会报错Exception&nbsp

java 问题求解

这是第二题-----------分割线----------------------------int arrs[][] = new int[3][4];for(int i = 0;ifor(int j = 0;jif(i == 0){arrs[i][j] =j;}if(i == 1){arrs[i][j] = j+1;}if(i == 2){arrs[i][j] = j+2;}}}for(int k = 0;kfor(int l = 0; lSystem.out.print(arrs[k][l]+" ");}System.out.println();}...

java swing 的几个问题,求教

吐血大奉献了总共两个文件,第一个是启动文件,第二个是一个基础面板类,可以运行。

已经帮你排好版面了,只是未有添加事件响应,你研究一下自己添加吧package com;import com.ren.BasePanel;import javax.swing.*;import java.awt.BorderLayout;import java.awt.Toolkit;public class SwingTest extends JFrame { public static void main(String args[]) { new SwingTest(); } public SwingTest() { super("SwingTextField 测试"); init(); setup(); this.setSize(800, 300); this.setVisible(true); this.setLocation ( //定位框架位置 (int) (Toolkit.getDefaultToolkit().getScreenSize(). getWidth() - 400) / 2, (int) (Toolkit.getDefaultToolkit().getScreenSize(). getHeight() - 300) / 2 ); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } BasePanel leftPanel; BasePanel rightPanel; JTextField country = new JTextField(16); JButton search = new JButton("SEARCH"); JTextField latitude = new JTextField(40); JTextField currentTime = new JTextField(40); JTextField wind = new JTextField(40); JTextField visibilityField = new JTextField(40); JTextField skycondition = new JTextField(40); JTextField dewpoint = new JTextField(40); JTextField relativehumidity = new JTextField(40); JTextField presure = new JTextField(40); public void init() { leftPanel = new BasePanel() { public void initAllComponents() { } public void layoutAllComponents() { addComponent(country, 0, 0, 1, 1, 10, 10); addComponent(search, 1, 0, 1, 1, 10, 10); } }; rightPanel = new BasePanel() { public void initAllComponents() { } public void layoutAllComponents() { addComponent(latitude, 0, 0, 1, 1, 10, 10); addComponent(currentTime, 1, 0, 1, 1, 10, 10); addComponent(wind, 2, 0, 1, 1, 10, 10); addComponent(visibilityField, 3, 0, 1, 1, 10, 10); addComponent(skycondition, 4, 0, 1, 1, 10, 10); addComponent(dewpoint, 5, 0, 1, 1, 10, 10); addComponent(relativehumidity, 6, 0, 1, 1, 10, 10); addComponent(presure, 7, 0, 1, 1, 10, 10); } }; } public void setup() { this.setLayout(new BorderLayout()); this.add(leftPanel, BorderLayout.WEST); this.add(rightPanel, BorderLayout.EAST); }}以下是我以前的经验总结,比较有用的一个类,你可以好好研究一下/** * ============================================================================= * Copyright (c) 2008, Ren Java Studio * All rights reserved. * ============================================================================= * 文件名称:BasePanel.java * 文件标识:见配置管理计划书 * 摘 要:抽象基础面板 * @version 2.0 * @author Ren * 完成日期:2008年5月5日. =============================================================================*/package com.ren;import java.awt.*;import javax.swing.*;public abstract class BasePanel extends JPanel { /*当前面板的容器*/ protected Container container; /*网格布局器*/ protected GridBagLayout layout; /*网格布局器的约束器*/ protected GridBagConstraints constraints; public BasePanel() { container = this; layout = new GridBagLayout(); constraints = new GridBagConstraints(); container.setLayout(layout); constraints.fill = constraints.BOTH; //在水平方向和垂直方向上同时调整组件大小 initAllComponents(); layoutAllComponents(); } /** * ========================================================================= * 初始化所有GUI组件. =========================================================================*/ protected abstract void initAllComponents(); /**@todo 继承之子类完成所有组件的初始化工作 */ /** * ========================================================================= * 布局所有已经初始化了的GUI组件 * * 布局器,约束器必须已经初始化好 * 然后再调用布局子函数进行网格布局 * =========================================================================*/ protected abstract void layoutAllComponents(); /**@todo 继承之子类完成组件具体的布局 */ /** * ========================================================================= * 工具函数:用于获取当前屏幕的分辨率 * @return Dimension 屏幕大小 =========================================================================*/ public Dimension getScreenSize() { return Toolkit.getDefaultToolkit().getScreenSize(); } /** * ========================================================================== * 设置将本程序框架大小并将其定位于屏幕正中心 * @param container Container 要设置的容器 * @param width 本框架的宽度 * @param height 本框架的高...

本文来自投稿,不代表本站立场,如若转载,请注明出处。