java 如何访问String ArrayList中的特定字符

nr7wwzry  于 2023-04-28  发布在  Java
关注(0)|答案(2)|浏览(102)

我正试图打印出数组列表中的单词,考虑到它们不是以“S”开头的。因此,我需要String数组列表中每个项的第一个索引
我的第一个尝试是将if语句中的条件设置为:if(itemsArrayList.charAt(0)==“S”),但这给我带来了一个错误。
这一个并没有抛出错误,但它仍然打印出ArrayList中的所有项目(没有跳过“Slim”和“Shady”)
code
//不允许我将代码作为文本发布

n9vozmp4

n9vozmp41#

请查看Java

import java.util.ArrayList;
public class MyClass {
    public static void main(String args[]) {
        ArrayList<String> cars = new ArrayList<String>();
        cars.add("Volvo"); //position 0 in the array
        cars.add("BMW"); //position 1 in the array
        cars.add("Ford"); //position 2 in the array
        cars.add("Mazda"); //position 3 in the array
        System.out.println(cars.get(0).toString().charAt(0));
        System.out.println(cars.get(1).toString().charAt(0));
        System.out.println(cars.get(2).toString().charAt(0));
        System.out.println(cars.get(3).toString().charAt(0));
    }
}
vhmi4jdf

vhmi4jdf2#

首先,itemsArrayList中有一个错误。charAt(0)==“S”,因为您正在比较字符串引用与char原语(不同类型)。
第二,您仍然打印所有字符串,因为您的条件永远不会为真,您正在测试字符串列表(itemsArrayList)的第一个元素是否为get(0))从S开始,这是永远不会发生的,因为你的第一个元素是hello。
测试应该如下所示

if(x.charAt(0) == 'S')

注意'S'是一个字符,而不是一个字符串,因为它是一个简单的引号

相关问题