JAVA List中怎么判断是否含有某个字符(已试过contain()不行)

Goods goods1=new Goods("001","苹果",8.8);
Goods goods2=new Goods("002","桃子",6);
List goodsList=new ArrayList();
goodsList.add(goods1);
goodsList.add(goods2);

我想输入一个编号,判断它是否是List中的。比如输入001,返回true,输入007,返回false。

写作业不会写。。。。。求助大神门= =
0

5个回答

首先说,,用 contains(),,,,是对的,看下源码。

public boolean contains(Object o) {
        return indexOf(o) >= 0;
    }

public int indexOf(Object o) {
        if (o == null) {
            for (int i = 0; i < size; i++)
                if (elementData[i]==null)
                    return i;
        } else {
            for (int i = 0; i < size; i++)
                if (o.equals(elementData[i]))
                    return i;
        }
        return -1;
    }

比较两个对象是通过equals方法进行比较的,,你需要重写你那个Goods的equals方法。

至于怎么重写,,,不会还可以追问,,对你有帮助,,请采纳 ^.^。

1

你这个作业我觉得是想要你用map吧,把001作为键,goods对象作为值。

1

很明显 List里的goods是对象,如果你没有重写对象里的equals方法,那么你调用list的contains方法是,
他会比较两对象之间的地址信息(这么超类的逻辑),
所以:
1、 你如果打算用contains,那么你就要写goods的equals方法。看你的业务逻辑你的equals方法只要比较goods编号就行。
2、可以用另一种方式用contains:你可以再写一个list存编号,这个list与你的goods的list的数据要同进同出,然后存编号的list就用contains就可以了。
3、当然也可以用map做,key就是编号了。
4、最低效的是:每次判断是 List 做遍历,list.get(i).get编号().equals(你的goods.get编号())【相信你懂】

1

public class WdgTest
{
public static void main(String [] args){
Goods goods1=new Goods("001","苹果",8.8);
Goods goods2=new Goods("002","桃子",6);
List goodsList=new ArrayList();
goodsList.add(goods1);
goodsList.add(goods2);
@SuppressWarnings("resource")
Scanner sc=new Scanner(System.in);
boolean b1=false;
while(true){
System.out.println("请输入商品的序号:");
String goodIndex=sc.nextLine();
for(int i=0;i<goodsList.size();i++){
if(goodsList.get(i).getIndex().equals(goodIndex)){
b1=true;
i=goodsList.size();
}
}
System.out.println(b1);
b1=false;
}

}
}
class Goods{
private String index;
private String name;
private double price;
public Goods(String index, String name, double price) {
super();
this.index = index;
this.name = name;
this.price = price;
}
public String getIndex() {
return index;
}
}
最低效的做法

0

如楼上所说,最简单的办法,重写Goods的equals方法。如下所示:

public class Goods {
private String num;
private String name;
private String price;

    public Goods(String num, String name, String price) {
        this.num = num;
        this.name = name;
        this.price = price;
    }

    public String getNum() {
        return num;
    }

    public void setNum(String num) {
        this.num = num;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getPrice() {
        return price;
    }

    public void setPrice(String price) {
        this.price = price;
    }

    @Override
    public boolean equals(Object o) {
        if (null == o)
            return false;
        Goods goods = (Goods) o;
        if (this.num.equals(goods.getNum())) {
            return true;
        }
        return false;
    }
}
0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
判断List<T>里面是否存在某一个字符串
IList需要引用nnstring[] strArr = {&quot;a&quot;,&quot;b&quot;,&quot;c&quot;,&quot;d&quot;,&quot;e&quot;};nbool exists = ((IList)strArr).Contains(&quot;a&quot;);nif(exists)n// 存在nelsen// 不存在n
list.contains()方法判断是否包含自定义对象
自定义class:nnpublic class User implements Serializable {nn    private static final long serialVersionUID = -5604740934665227785L;nn    private String name;n    private Integer age;n    private Date birt...
pandas.Series.str.contains查询每行是否包含指定的字符串
实际上df的也有str.contains,代码如下:nnndef fillarea(area='PLMN=1,AREA=2', path=r'C:\Users\Administrator\Desktop\20181119\小时报表',n columnname='网元', saveto=r'C:\Users\Administrator\Desktop\20181119\per...
python判断字符串中包含某个字符的判断函数脚本
#coding=utf8n#参数包含两个:n#containVar:查找包含的字符n#stringVar:所要查找的字符串ndef containVarInString(containVar,stringVar):n try:n if isinstance(stringVar, str):n if stringVar.find(containVar):n
判断字符串是否contain某个字符串
#include&amp;lt;iostream&amp;gt;n#include&amp;lt;string&amp;gt;nusing namespace std;nbool judgeIsContain(string origin, string searchContent)n{n   char* originStr = (char*)(origin.c_str());n   char* searchContentStr ...
oracle使用contains、instr或like方法判断是否包含字符串
rn如数据库中存储了海量的数据,当查询时使用like,速度明显变慢。rn今天特意测试一下,发现可以使用instr函数来取代like的有明显的提高。rn rn在1KW的的区间测试:rncarnumber建立了索引,当然这个是对于某一个字段而言,但是有2个以上的字段,效果就更加明显。rncontains:   建立索引的基础上.rnselect count(1) from passcar dd whe...
java 判断一个字符串是否包含某个字符
一、indexOf()nn     indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。如果要检索的字符串值没有出现,则该方返   回-1。indexOf的返回值为intnnnpublic class StringContain {n public static void main(String[] args) {n /*n indexOf(...
shell 判断变量中是否包含某个字符串
str="this is a string"n[[ $str =~ "this" ]] && echo "$str contains this" n[[ $str =~ "that" ]] || echo "$str does NOT contain that"rn结果为:rnthis is a string contains thisrnthis is a string does NOT con
Java语言判断某一字符串是否包含另一字符串
n判断字符串“学习”是否包含在字符串“好好学习,天天向上”中。rnpublic class Test {rn public static void main(String[] args) {rn String a = &quot;好好学习,天天向上&quot;;rn String b=&quot;学习&quot;;rn if(a.contains(b)){rn System.out.println(&quot;包含其中&quot;);;rn ...
JSTL判断一个list集合里是否包含某个字符串
今天在写一个需求时,在jsp页面中要判断servlet带过来的 list 集合中是否包含某个字符串,如果包含则执行某种操作,如果不包含则执行另一种操作。起初用的是JSTL标签里 fn:contains标签,但却不能达到我的要求。最后查阅资料,总算找到了解决方法。n首先;fn:contains标签的作用是:判断一个输入字符串是否包含一个指定的子串。即该标签内部的实现原理是“包含”,而不是我们所需要
<c:if中contains是否包含
${module.moduleName }n n rnrnrnrnrn${fn:contains(list,contains)}rnrnrnrnrnrnrn${fn:contains(参数1,参数2)}rnrn参数一:集合,包含rn参数二:要包含的字符
java 如何判断集合中是否存在某个元素——contains()?
List 有方法contains可以判断出List中是否已经有这个值。如果想去重复可以使用HashSet去重复。List&amp;lt;String&amp;gt; list = new ArrayList&amp;lt;String&amp;gt;(new HashSet&amp;lt;String&amp;gt;(a));n1.List的contains(obj)方法  实际上,List调用contains(Object obj)方法时,会...
java判断string中是否有某字符
字符串类有contains() 方法的用来查找是否含有某些字符n你可以用nboolean res=a.contains(b);n如果res=true就是含有。n另外字符串的indexOf方法也行啊na.indexOf(b)如果返回的整数大于-1就说明a含有b....
判断当前字符串是否包含指定字符串
两种方法:String的contains()方法和正则表达式match()方法public static void main(String[] args) { n String str = &quot;abc&quot;; n boolean status = str.contains(&quot;ab&quot;); n if(status){ n System....
lua判断字符串包含另一个字符串
local headers = ngx.req.get_headers()n log("headers=="..cjson.encode(headers))
.contains() 判断一个元素内是否包含另一个元素
&amp;lt;div id=&quot;parent&quot;&amp;gt;n parentn &amp;lt;div id=&quot;children&quot;&amp;gt;children&amp;lt;/div&amp;gt;n&amp;lt;/div&amp;gt;js代码:let parent = document.getElementById('parent')nlet children = document.getElementById('children')nif (...
Mysql字符串字段判断是否包含某个字符串的3种方法
方法一:rnSELECT * FROM users WHERErn emails like "%b@email.com%";rnrnrnrnrnrn方法二:rnrn利用mysql 字符串函数 find_in_set();rnSELECT * FROM users WHERE find_in_set('aa@email.com', emails);rnrnrn这样是可以的,怎么理解呢?rnrnmys
JAVA 判断字符串是否包含某个字符 正则表达式
JAVA 判断字符串是否包含某个字符 正则表达式废话不多说….直接上代码吧。随手写了个一个判断账号的小栗子public static void main(String[] args) {n while(true){n System.out.println("请输入账号");n Scanner scan = new Scanner(System
C# 判断包含字符-contains
StartsWith: 是否以某一个字符串开头,结果布尔类型nnEndsWith: 是否以某一个字符串结尾,结果布尔类型nnContains: 判断某一个字符串中是否包含某一个字符串,结果是布尔类型nn具体如下:nnnnnnContans 和 Indexof实现判断包含字符具体如下:nn...
Swift 字符串是否包含某字符
n n n 网上很多资料都是错的,Xcodenif string.text!.contains(&quot;.&quot;) {n print(&quot;字符串包含.&quot;)n }nn附Documentation解释nFinding Substringsnfunc hasPrefix(String)nReturns a Boolean value indic...
Java实现通过正则表达式判断一个字符串是否含有“abc”字符串
nString str = &quot;asdfabcadfa-&quot;;nPattern p = Pattern.compile(&quot;.*abc.*&quot;);nMatcher m = p.matcher(str);nboolean isValid = m.matches();nSystem.out.println(isValid);nn 
判断字符串是否在list集合中存在
判断字符串是否在列表集合中存在nn用含有方法,返回true和falsenn若存在,返回true;若不存在,则返回false;nnnpackage com.jianhu.Test;nnimport java.text.SimpleDateFormat;nimport java.util.ArrayList;nimport java.util.Calendar;nimport java.util.Da...
Delphi判断字符串是否包含限制以外的字符 否则置空
判断字符串是否包含限制以外的字符 否则置空procedure TMainForm.cbSearchExit(Sender: TObject); //判断退出事件nvarnJ:Integer;nK:String;nbeginn K := TsEdit(Sender).Text;nfor J:=1 to Length(K) do nbeginnif not(K[J] in ['0'..'9','a'....
如何判断ArrayList中是否存在某一个自定义对象
在开发中经常用到ArrayList,有时候需要判断ArrayList中,是否已经存在某一个自定义的实体对象,该如何判断呢?nArrayList的Api文档中有这样一个方法:boolean contains(Object o),用来判断是否存在某一个Object。n我们先来看一下这个方法实现的具体源代码:n /**n * Returns &amp;lt;tt&amp;gt;true&amp;lt;/tt&amp;gt...
java 判断一个字符串是否包含某个字符串contains和indexOf
一、contains方法nn1:描述nnjava.lang.String.contains() 方法返回true,当且仅当此字符串包含指定的char值序列nn2:声明nnpublicbooleancontains(CharSequences)n3:返回值nn此方法返回true,如果此字符串包含,否则返回false。nn4:实例nnpublicstaticvoidmain(St...
java list 判断对象是否存在
rnString tags=this.getPublish().getTags();                if (tags.contains(&quot; &quot;)) {            resembleList=new ArrayList&amp;lt;Publish&amp;gt;();            String tag[]=tags.split(&quot; &quot;);            int repe...
MATLAB 判断字符串中是否含有特定的字符
这个程序的目的是,逐行读取file.txt文件中的字符串,并判断字符串中是否含有特定的字符,如果含有,再对字符串进行处理,然后写入到新的TXT文档中new_file.txtfid=fopen('D:\new_file.txt','wt');nphns = 'D:\file.txt';nfpn = fopen (phns(1,:), 'rt'); %n while feof(fpn) ~= 1%n
判断字符串是否包含某些字符
一、判断字符串是否包含某一个字符NSString *str1 = @"abcd";nNSString *str = @"a";n//在str1这个字符串中搜索\n,判断有没有nif ([str1 rangeOfString:str].location != NSNotFound) { n NSLog(@"这个字符串中有a");n }二、判断字符串中是否包含数字#pragma mark
如何判断一个字符串是否在list集合中存在!
如何判断一个字符串是否在list集合中存在!nnnnnncontains方法返回true和falsennnnnnpublic class ListTest {nn    public static void main(String[] args) {nn        List list = new ArrayList();nn        list.add(
如何判断StringBuffer中是否包含某一个子串
判断StringBuffer中是否包含某一个子串
Python判断一个字符串是否包含子串的几种方法
1.使用成员操作符 in>>> s='nihao,shijie'n>>> t='nihao'n>>> result = t in sn>>> print resultnTrue2.使用string模块的find()/rfind()方法>>> import stringn>>> s='nihao,shijie'n>>> t='nihao'n>>> result = string.find(s,t)!=
js中判断数组中是否包含某元素的方法
js 中是否包含某元素
判断map集合中是否包含某个键的方法(map.containsKey)
在Map集合中根据需求可以利用get()方法来判断是否存在某个键,但是可能会有null值问题,需要进一步判断,所以也可以使用containsKey()方法来判断nn nn例子:nnnnList&amp;lt;Map&amp;lt;String, Object&amp;gt;&amp;gt; visitList = visitService.selectTimeLineList(param);n n //存放年份及一次就诊数据...
c# 判断一个字符串列表中是否已经包括指定字符
c# 判断一个字符串列表中是否已经包括指定字符
判断url是否存在某个字符
var url = location.href;rnrnrnif (url.indexOf('password') >=1) {rn$('.password').addClass('side_select');rn$('.password').css('color','#ffffff')rn}
在List<string>的集合中,寻找包含某字符串的数据
在List<string>的集合中,寻找包含某字符串的数据
v-if中判断对象是否包含指定字符串
v-if中判断对象是否包含指定字符串nv-if=“item.tag &amp;&amp; item.tag.indexOf(‘str’) != -1”n其中item.tag为对象字符串indexOf()判断str出现的位置,为-1则不存在nn...
html元素是否包含另外一个元素,以及classList属性
如何判断一个元素A包含了元素B呢?如果不用contains方法的话,如何做呢?n腾讯面试的时候也出了这道题啊,当时没看dom的知识,所以一抹黑哦。。。n那就判断B是否为A的child喽,那也就是A是B的parent或者parent.parent或者parentNode.parentNode.parentNode....n所以就这样向上遍历一下B的父亲节点,看A是不是在这个父节点链上。代码如下:nfu
jsp 判断list是否包含string
在jstl里面有fn:contains(str,str)这样的方法来判断字符串是否包含另一个字符串,可是没有判断list是否包含string的方法,所以就自己写了一个方法rnrnrncontains.tag:rnnnnnnnn<%n String sepChars=separatorChars==null?"-":separatorChars;n String[] splitChars
判断字符串中是否含有某个子串方法总结
一、String对象方法——indexOf()、lastIndexOf()indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。var a = &quot;admad mnisasad&quot;;nconsole.log(a.indexOf(&quot;ad&quot;)); // 0nconsole.log(a.lastIndexOf(&quot;ad&quot;)); // 12二、支持正则表达式的对象方法——search()se...
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 java学习list java list 学习