我想创建一个搜索数组列表的方法,以查看数组列表中的对象是否以给定的char字符结尾,然后将字符的计数作为int返回。
public int OccurencesOfCharacter(Char givenCharacter){
....
}
这是我的数组列表
private ArrayList<Class> list;
例如,如果包含[Games,iphones]和我给定的出现字符的数组列表是's',我想返回2,因为它在字符串的末尾出现两次。
答案 0 :(得分:0)
看看下面的示例。
完整代码
import java.util.ArrayList;
public class Sample {
private static ArrayList<String> list;
public static void main(String[] args) {
list = new ArrayList<>();
list.add("Games");
list.add("iphones");
System.out.println(OccurencesOfCharacter('s'));
}
public static int OccurencesOfCharacter(char givenCharacter) {
int count = 0;
for(String s: list) {
if(s.charAt(s.length()-1)==givenCharacter)
count++;
}
return count;
}
}
其他说明:
char
定义的,而不是Char。您
也可以使用对象Character
,但不要使用Char,除非它是
你定义的一些课程。Class
更改为String
,因为我不确定Class
是否是您要使用的内容。希望它有所帮助!
答案 1 :(得分:0)
package demppractice;
import java.util.ArrayList;
public class AraylistEndWithS {
public static void main(String args[])
{
ArrayList<String> list=new ArrayList<>();
list.add("reshma");
list.add("ramesh");
list.add("kris");
list.add("Games");
list.add("phones");
countOccouranceOfWord("s",list);
}
public static void countOccouranceOfWord(String ch,ArrayList<String> list)
{
int count=0;
for(String ex:list)
{
if(ex.toLowerCase().endsWith(ch.toLowerCase()))count++;
}
System.out.println("count="+count);
}
}
答案 2 :(得分:0)
使用char.I在这里使用ASCII来比较大写和小写。对你有帮助。
package demppractice;
import java.util.ArrayList;
public class AraylistEndWithS {
public static void main(String args[])
{
ArrayList<String> list=new ArrayList<>();
list.add("reshma");
list.add("ramesh");
list.add("kris");
list.add("Games");
list.add("phones");
countOccouranceOfWord('s',list);
}
public static void countOccouranceOfWord(char ch,ArrayList<String> list)
{
int count=0;
for(String ex:list)
{
char endwithchar=ex.charAt(ex.length()-1);
int ascii = (int) endwithchar;
int ascii2 = (int) ch;
System.out.println("endwithchar="+endwithchar+"===ascii="+ascii);
if(ascii==ascii2)count++;
}
System.out.println("count="+count);
}
}