大哥你没仔细思考一下你这两段代码有何不同吗????
String fileData = "abc".concat("cba");
System.out.println(fileData);String a = "abc";
String b = "cba";
a.concat(b);
System.out.println(a);
前一个concat你知道它有返回值,可后一个你怎么没用变量来接收它的返回值呢???
还打印原来的a,那肯定还是原来的值吗。应该改成:
String a = "abc";
String b = "cba";
a = a.concat(b);
System.out.println(a);

解决方案 »

  1.   

    那是JAVA因为的字符串是不可改变的。
    读出文件可以用import java.io.*;public class counter extends Object {
    private String currentRecord = null;//保存文本的变量
    private BufferedReader file; //BufferedReader对象,用于读取文件数据
    private String path;//文件完整路径名
    public counter() {
    }
    //ReadFile方法用来读取文件filePath中的数据,并返回这个数据
    public String ReadFile(String filePath) throws FileNotFoundException
    {
    path = filePath;
    //创建新的BufferedReader对象
    file = new BufferedReader(new FileReader(path));
    String returnStr =null;
    try
    {
    //读取一行数据并保存到currentRecord变量中
    currentRecord = file.readLine();
    }
    catch (IOException e)
    {//错误处理
    System.out.println("读取数据错误.");
    }
    if (currentRecord == null)
    //如果文件为空
    returnStr = "没有任何记录";
    else
    {//文件不为空
    returnStr =currentRecord;
    }
    //返回读取文件的数据
    return returnStr;
    }
    //ReadFile方法用来将数据counter+1后写入到文本文件filePath中
    //以实现计数增长的功能
    public void WriteFile(String filePath,String counter) throws FileNotFoundException
    {
    path = filePath;
    //将counter转换为int类型并加一
    int Writestr = Integer.parseInt(counter)+1;
    try {
    //创建PrintWriter对象,用于写入数据到文件中
    PrintWriter pw = new PrintWriter(new FileOutputStream(filePath));
    //用文本格式打印整数Writestr
    pw.println(Writestr);
    //清除PrintWriter对象
    pw.close();
    } catch(IOException e) {
    //错误处理
    System.out.println("写入文件错误"+e.getMessage());
    }
    }}
      

  2.   

    String a = "abc";
    String b = "cba";
    a=a.concat(b);
    System.out.println(a);
     打印 abccba.
      

  3.   

    不建议用 a=a.concat(b);我觉得应该声明另一个变量,不然很容易搞混的. :)