java数组与字符串课程文档,JAVA字符串数组

发布时间:2022-11-19

本文目录一览:

  1. Java编程基础数组字符串集合
  2. JAVA 数组和字符串操作问题
  3. java 字符数组和字符串
  4. 在java中如何定义一个字符串数组
  5. Java如何将文本文档中的字符串读取到字符串数组?

Java编程基础数组字符串集合

/*
* 字符串abcdefg,要求按逆序输出为gfedcba
*/
public class ReverseSort {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String str = "abcdefg";
String sortedStr=reverseSort(str);
System.out.println(sortedStr);
}
public static String reverseSort(String str){
String str2="";
for(int i=str.length()-1;i>=0;i--){
str2+=String.valueOf(str.charAt(i));
}
return str2;
}
}

JAVA 数组和字符串操作问题

public class Shash {
    String str=" ";
    int oCount,gCount;
    public void method() {
        for(int i=0;i<str.length();i++) {
            if(String.valueOf(str.charAt(i)).equals("o")) {
                oCount++;
            }
            if(String.valueOf(str.charAt(i)).equals("g")) {
                gCount++;
            }
        }
        System.out.println(" 的长度是:"+str.length());
        System.out.println("o的个数是:"+oCount);
        System.out.println("o的个数是:"+gCount);
        System.out.println(str.substring(4,10));
    }
    public static void main(String args[]) {
        new Shash().method();
    }
}

答案补充:s.equals(s1)true,而 s == s1false

java 字符数组和字符串

您可以调用 String 的方法转换,如 toCharArray()

char[] array = "abc".toCharArray();

在java中如何定义一个字符串数组

  1. Java中定义一个字符串数组方式如下,String 类型和其他基本类型相似,创建数组有两种方式:
String[] str = {"AAA", "BBB", "CCC"};
String str[] = {"AAA", "BBB", "CCC"};
  1. 推荐使用 ArrayList
ArrayList<String> strArray = new ArrayList<String>();
  1. 也可以写为如下格式:
class[] array;
array = new class[number];

其中前半句为声明,后半句为初始化。初始化必须要让编译器知道大小,声明的时候 Java 是不分配内存的,只有创建的时候也就是 new 的时候才会分配内存。

扩展资料:

  1. 数组是相同数据类型的元素的集合。
  2. 数组中的各元素的存储是有先后顺序的,它们在内存中按照这个先后顺序连续存放在一起。
  3. 数组元素用整个数组的名字和它自己在数组中的顺序位置来表示。例如,a[0] 表示名字为 a 的数组中的第一个元素,a[1] 代表数组 a 的第二个元素,以此类推。
  4. 对于 VB 的数组,表示数组元素时应注意:
    • 下标要紧跟在数组名后,而且用圆括号括起来(不能用其他括号)。
    • 下标可以是常量、变量或表达式,但其值必须是整数。
    • 下标必须为一段连续的整数,其最小值称为下界,其最大值称为上界。不加说明时下界值默认为 1。 参考资料:字符数组_百度百科

Java如何将文本文档中的字符串读取到字符串数组?

使用 RandomAccessFile 先读取一次计算行数,然后 seek 重置到文件头部,再读取每行,赋值给数组。

import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.RandomAccessFile;
public class Test {
    // 此题目关键是根据文件内容确定二维数组的行数和列数
    public static void main(String[] args) {
        RandomAccessFile reader = null;
        try {
            reader = new RandomAccessFile("test.txt", "r");
            int n = 0; // 行数
            while (reader.readLine() != null) { // 第一次按行读取只为了计算行数
                n++;
            }
            String[][] a = new String[n][];
            reader.seek(0); // 重置到文件头部
            int j;
            String line;
            String[] strs;
            int i = 0;
            while ((line = reader.readLine()) != null) { // 第二次按行读取是真正的读取数据
                strs = line.split(" "); // 把读取到的一行数据以空格分割成子字符串数组
                a[i] = new String[strs.length]; // 列数就是数组 strs 的大小,此句是逐行创建二维数组的列
                for (j = 0; j < strs.length; j++) {
                    a[i][j] = strs[j]; // 逐行给二维数组的每一列赋值
                }
                i++;
            }
            for (i = 0; i < n; i++) {
                for (j = 0; j < a[i].length; j++) {
                    System.out.println("a[" + i + "][" + j + "]=" + a[i][j]);
                }
            }
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            if (reader != null) {
                try {
                    reader.close();
                    reader = null;
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }
}

运行结果如图。