小编use*_*421的帖子

注释=评论?

它们是否通过注释表示带有//或/**/的代码中的注释?

java annotations

5
推荐指数
2
解决办法
6639
查看次数

使用SimpleDateFormat解析结果的奇怪日期和时间

使用SimpleDateFormat解析ISO8601的日期和时间时,我遇到了一个奇怪的问题.相关代码是:

public class DateHelper
{
    private static SimpleDateFormat iso8601formatter = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ");
    public static Date parseISO8601(String date) throws ParseException
    {
        Date result = iso8601formatter.parse(date);
        return result;
    }
}
Run Code Online (Sandbox Code Playgroud)

对于输入我给它一个字符串

2010-09-06T15:30:00+02:00
Run Code Online (Sandbox Code Playgroud)

作为回报,我得到一个Date对象,日期设置为2010年1月6日,时间为13:30,时区为GMT + 00:00.

编辑:我也尝试使用"2010-09-06T15:30:00 + 0200",结果相同.

令人困惑的是,日期设置部分正确,只是月份设置错误.

问题显示在Android 1.6和Android 2.2上.

我该如何解决?

java parsing android date simpledateformat

5
推荐指数
1
解决办法
8482
查看次数

Java枚举重写toString()

我之前从未真正使用Java枚举类来获取常量值,我过去通常使用"公共最终"方法.我现在开始使用枚举,并且我重写了toString()方法以返回与枚举名称不同的值.

我有一些JPA代码,我在其中创建一个带有命名参数的TypedQuery,其中一个是枚举值的String表示.如果我只使用Status.ACTIVE设置参数,我会得到正确的"A"值,但会抛出异常,因为它的类型实际上是Status而不是String.它只有在我显式调用toString()方法时才有效.我认为简单地重写toString()方法会导致返回一个String类型,无论类类型是什么.

这是枚举:

public enum Status {
    ACTIVE ("A"),
    PENDING ("P"),
    FINISHED ("F");

    private final String value;

    Status(String value) {
        this.value = value;
    }

    public String toString() {
        return value;
    }
};
Run Code Online (Sandbox Code Playgroud)

这是TypedQuery:

    TypedQuery<MechanicTimeEvent> query = entityManager().createQuery("SELECT o FROM MechanicTimeEvent o WHERE o.id.mechanicNumber = :mechanicNumber AND o.id.status = :status", MechanicTimeEvent.class);
    query.setParameter("mechanicNumber", mechanicNumber);
    query.setParameter("status", Status.ACTIVE.toString());
Run Code Online (Sandbox Code Playgroud)

java enums jpa tostring

5
推荐指数
2
解决办法
2万
查看次数

操作无效:结果集已关闭

当我的结果集数据很大时,我得到了 com.ibm.db2.jcc.am.SqlException: [jcc][t4][10120][10898][4.9.78] Invalid operation: result set is closed. ERRORCODE=-4470, SQLSTATE=null异常,但是当我在结果集中尝试使用较少量的数据时却没有

以下是我的代码段

ResultSet rs=null;
String sql_query="select * from exception_main;select * from m_roles"
String query1=sql_query.toUpperCase();
String[] results=query1.split(";");         
CSVWriter writer = new CSVWriter(new FileWriter(csv_file_path + csv_file_name), ',',CSVWriter.NO_QUOTE_CHARACTER);                     
for(int i=0;i<results.length;i++)                         
{                             
  if(results[i].startsWith("SELECT"))                             
  {                                 
    System.out.println("Inside select"+ results[i]);                             

    ps = conn1.prepareStatement(results[i].toString());                             
    rs = ps.executeQuery();             

    ...                        

    //writing to csv file                          
    System.out.println("Count..." + rs.getRow());                        
    writer.writeAll(rs, true);                         

    while(rs.next()){                                  
      rs.deleteRow();                                
    }                          
    System.out.println("Count...3:::::::" + rs1.getRow());     
  }     
}
writer.close(); 
rs.close();
Run Code Online (Sandbox Code Playgroud)

java jdbc java-ee

5
推荐指数
2
解决办法
1万
查看次数

java.lang.NumberFormatException:对于输入字符串:"null"

我正在解析文档,我收到以下错误:

Exception in thread "main" java.lang.NumberFormatException: For input string: "null"
    at sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:1222)
    at java.lang.Float.valueOf(Float.java:388)
    at CentroidGenerator$Centroid.averageLat(CentroidGenerator.java:403)
    at CentroidGenerator.getCentroids(CentroidGenerator.java:30)
    at CentroidGenerator.main(CentroidGenerator.java:139)
Run Code Online (Sandbox Code Playgroud)

这是抛出异常的代码的一部分:

if (latitude!=null) {
    //if (!latitude.equals("null")) {
        String[] latValues = latitude.split(" ");
    float sum = 0;
    for (int i = 0; i < latValues.length; i++) {                
        sum = sum + Float.valueOf(latValues[i].trim()).floatValue();
    }
    latitude = Float.toString(sum / (float) latValues.length);
    //}
}   
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,我已经尝试检查"null"字符串,但即使取消注释第二个if语句,我也会得到相同的错误.

谢谢

java

4
推荐指数
1
解决办法
8万
查看次数

Java =运算符

Integer n = 5;  
System.out.println(n) // 5!
Run Code Online (Sandbox Code Playgroud)

我怎样才能在我的课程中重现这种行为?

java autoboxing

3
推荐指数
1
解决办法
330
查看次数

我的Eclipse副本不知道对象或字符串是什么

我的mac上有一份Eclipse Indigo.它工作正常,直到我导入了我在另一台计算机上制作的项目.现在我收到类似"java.lang.Object类型无法解析"的错误.和"字符串无法解析为类型".

另外,我构建它的计算机有Java 7,而我稍微破坏的mac有Java 6,并且不会更新.我不确定,但我怀疑这可能是一个问题.

发生了什么,我该如何解决?

UPDATE

我把我认为正确的JRE放在构建路径中,但现在当我运行它时,我得到了这些错误:

Exception in thread "main" java.lang.UnsupportedClassVersionError: Game : Unsupported major.minor version 51.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)
at java.lang.ClassLoader.defineClass(ClassLoader.java:615)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
Run Code Online (Sandbox Code Playgroud)

java eclipse string import object

3
推荐指数
1
解决办法
1万
查看次数

在不使用java.io. *的情况下获取FileChannel(使用纯NIO)

最近,我对这个答案发表了评论,java.io如果我想使用“纯NIO” ,我应该远离它。
这是简化的代码(复制文件):

private static void copy(File source, File destination) throws IOException {
    long length = source.length();
    FileChannel input = new FileInputStream(source).getChannel();
    FileChannel output = new FileOutputStream(destination).getChannel();

    input.transferTo(0, length, output);

    output.close();
    input.close();
}
Run Code Online (Sandbox Code Playgroud)

(代码极其简化:最终尝试删除并循环执行)

我的问题是如何在FileChannel不使用java.io(FileInputStream)的情况下获取一个或其他NIO类来读取文件?

编辑:
Java 6(或之前)

java file-io nio copy channel

2
推荐指数
2
解决办法
4558
查看次数

从方法返回String []

我想从存储在数组中的方法返回两个值.我该怎么做?
例如:该方法需要返回"un""pwd".

java return-value

2
推荐指数
2
解决办法
231
查看次数

Java中的随机生成器问题

我正在从事涉及模拟802.11 MAC协议的无线项目。我在其中使用了随机生成器,问题是我们变得越来越不稳定而不是平滑图,我相信这个错误是由于随机生成器造成的。为了进行测试,我运行了下面的代码,该代码生成0到19之间的100个随机数。如果仔细查看输出,那么会有几个连续的数字相同或非常接近(例如17,15,15,16 ...或1,1 ,...)。这会导致在我们的仿真中发生碰撞,并且相应的吞吐量在该点下降(即,变形)。在这种情况下,增加仿真运行时间并没有太大帮助。

谁能帮我弄清楚如何在Java循环中生成真正随机的n个随机数(没有这种模式)?

这是尝试的代码:

import java.util.Random;

public class RandomTest {

    public static void main(String[] args){

        int [] counter = new int [20];

        Random generator = new Random();
        int randomIndex = 0;

        for (int i=0; i<100; i++){

            randomIndex = generator.nextInt(20);
            counter[randomIndex]++;
            System.out.println(randomIndex);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

java random

1
推荐指数
1
解决办法
6454
查看次数

Java编译错误缺少return语句.需要澄清

所以我无法完成这个程序.该程序应该接受您输入的任何字符串并将字母按字母顺序排序.我认为我的逻辑足够好,但我得到的返回语句错误有点奇怪.必须有一些我忘记的东西.

我得到的错误是(将直接在此下方):

Sorting.Java:26:错误:缺少return语句} ^

import java.util.Scanner;

public class Sorting {
  public static void main(String args[]){
    Scanner keyboard = new Scanner(System.in);
    System.out.println("Enter a String: ");
    String s = keyboard.nextLine();
  }

  static String sort(String s) {
    char[] content = s.toCharArray();
    java.util.Arrays.sort(content);
    String sorted = new String(content);
    System.out.println(content);
    return char content; 
  } 
}
Run Code Online (Sandbox Code Playgroud)

java sorting string compilation

0
推荐指数
1
解决办法
1094
查看次数

使用String.replaceAll()方法时出现非法重复异常

我有以下代码:

    public String replaceValues(String string, HashMap hashMap){
    TestHashMap h = new TestHashMap();
    String str = new String(h.xmlToString());
    Iterator iterator = hashMap.entrySet().iterator();
    while(iterator.hasNext()){
        HashMap.Entry pair = (HashMap.Entry)iterator.next();
        str = str.replaceAll(pair.getKey().toString(), pair.getValue().toString());
    }
    return str; 
}

public static void main(String[] args) {
    TestHashMap h = new TestHashMap();
    HashMap<String, String> hmap = new HashMap<String, String>();
    hmap.put("{username}", "Tudor");
    hmap.put("{password}", "Tester123");
    System.out.println(hmap);
    String replace = h.replaceValues(h.xmlToString(), hmap);
    System.out.println(replace);
}
Run Code Online (Sandbox Code Playgroud)

XML文件如下所示:

<?xml version="1.0" encoding="UTF-8"?>
<hashmap>
    <request>
        <username>{username}</username>
        <password>{password}</password>
    </request>
</hashmap>
Run Code Online (Sandbox Code Playgroud)

抛出异常:非法重复.但是我没有办法逃避"{}"字符,因为我得到的方法是使用getKey()和getValue()方法,它按预期返回{password}和{username}.然而它打破了String replace = h.replaceValues(h.xmlToString(), hmap) …

java regex

-1
推荐指数
1
解决办法
248
查看次数