如果是我的程序,我想在条件中使用数组,但是我在实现它时遇到了问题。
我有一个数组:
//I want to put my condition in array column 3 (in title)
Data[] hotel = {
new Data(-6.8851995, 108.4978142, "Grage Sangkan Hotel & Spa",
"Jl. Raya Sangkanhurip No.1 Desa Sangkanhurip"),
new Data(-6.879592, 108.513353, "Prima Hotel Sangkanhurip ",
"Jl. Panawuwan No.121 Kec. Cigandamekar "),
new Data(-6.883889, 108.500000, "Tirta Sanita Spa Resort ",
"Jl.Panawuwan No.98 Kec.Cigandamekar")
}
我有条件:
//my condition equals array column 3 (in title)
if (v.getTitle().equals(hotel[3] ? ??)){ // in here I don't know what can I do
tempat = new Intent(Peta.this, KetWisata.class);
// TODO Auto-generated method stub
if (v.getTitle().contains("Wisata Cibulan")) {
tampil = "wis_cibulan";
}
if (v.getTitle().contains("Linggarjati Indah")) {
tampil = "wis_linggarjati";
}
if (v.getTitle().contains("Balong Dalem")) {
tampil = "wis_balongdalem";
}
} else {
// ...
}
答案 0 :(得分:0)
使用v.getTitle()
从v
中获取title元素的方法相同,您需要使用类似的方法从数组中的Data元素中获取标题值。
假设v
也是Data
类型,那么您要求的代码是......
if ( v.getTitle().equals( hotel[3].getTitle() )) {
// Your code -----------
}
这样你就可以测试这两个标题是否相等。只需将酒店[3]视为Data
类型的任何其他变量。
答案 1 :(得分:0)
首先,数组从零开始。长度为3的数组的最大可索引元素为2 - 任何更高的数据都会得到ArrayIndexOutOfBoundsException
。
第二,这一行:
if (v.getTitle().equals(hotel[3] ? ??)
不正确,即使问号不存在也无效。原因是:
hotel
的类型为Data
,我们只能假设getTitle()
返回String
。您无法将String
与Data
进行比较。
你想要的是这样的东西:
if (v.getTitle().equals(hotel[2].getTitle())
答案 2 :(得分:-1)
好的,你可以创造一个类似的东西:
class RandomStuffs {
public void ArrayEquals(ArrayList Array , string SearchData){
int I = 0;
int T = 0;
Boolean Continue = false;
for(I = 0;I < Array.length ; I ++){
for(T = 0;T <Array[i].length;T ++){
if(Array[I][T] == SearchData ){
Continue = true;
break;
}
}
if(Continue == true){
return true;
}else {
return false;
}
}
}
并称之为:
Class Main {
public static void main(String args[]){
RandomStuffs Class = new RandomStuffs();
if(Class.ArrayEquals(hotel , "Wisata Subilian"){
//Code To Execute
}else {
//Error Handler Or Another Block
}
}
}
此循环检查多维数组是否包含字符串
如果这不是你想要的那么你可以玩一点循环,它会正常工作。
或者告诉我,我会回答你
在你的问题之间不清楚你没有真正指定你的内容