ArrayList<Resnocapdata> listResnocapdataMaxDiamterResults=new ArrayList<Resnocapdata>();
for(int i=0;i< listResnocapdataMaxDiamter.size();i++){
if(null!=sizelongimput&&null!=listResnocapdataMaxDiamter.get(i).getResnocapvalue()){
Float longimputFloat = Float.parseFloat(sizelongimput);
int IntResnocapdataMaxDiamter = Integer(listResnocapdataMaxDiamter.get(i).getResnocapvalue());
if(longimputFloat < IntResnocapdataMaxDiamter){
listResnocapdataMaxDiamterResults.add((Resnocapdata) listResnocapdataMaxDiamter.get(i));
}
}
}
其中标红的那段listResnocapdataMaxDiamter.get(i).getResnocapvalue()里面的值如下
20
25
20
20
25
20
25
25
14
20
14
14
14
20
20
20
M10?.5;M24?
M10?.5;M24?
M16?;M24?5
M10?.5;M24?
M10?.5;M24?
M16?;M24?5
M16?;M24?5
M16?;M24?5
φ400
φ800
φ800
100
125
125
340
340
410
200
410
410
null
null
215
175
215
也就是说,有数字类型的string,也有不是数字类型的,我想筛选出不是数字的,然后转化为int或者float
然后与longimputFloat比较大小。
求指点。新人没多少分~谢谢了
14 个解决方案
#1
说错了,筛选出数字类型的,然后比较大小
#2
我想筛选出
不是数字的,然后
转化为int或者float???
#3
说反了,,,是数字的
#4
你刚开始学代码,怎么你的需求我都听不懂
list筛选数字,然后比大小,跟谁比 啊
比完了那,是存在另外一个地方啊,还是怎么回事啊
list筛选数字,然后比大小,跟谁比 啊
比完了那,是存在另外一个地方啊,还是怎么回事啊
#5
我觉的你现在需要去学一下语文,不是学代码,你着急了
#6
循环,正则判断每一个值
#7
现在的需求是,把上面的list里面的数字类型的值,跟longimputFloat 比较,longimputFloat 是输入的一个数字,然后比longimputFloat 大的存起来,存到listResnocapdataMaxDiamterResults这个list里面。
囧,我好像是太着急了,自己没有学好。
不知道这样描述可以不
#8
能不能随手写一行代码~给我参考一下,谢谢了
#9
我还有一个问题
if(longimputFloat < IntResnocapdataMaxDiamter)
这句话是你输入一个值,然后跟一个list比较?
不是循环list跟每一个比较?
是需要比list里面所有数字的值都大的话才存储起来吗?
if(longimputFloat < IntResnocapdataMaxDiamter)
这句话是你输入一个值,然后跟一个list比较?
不是循环list跟每一个比较?
是需要比list里面所有数字的值都大的话才存储起来吗?
#10
对的,longimputFloat是一个输入值,然后list里面有很多值,比longimputFloat大的都筛选出来。。。然后存储
#11
public static void main(String[] args) {
List<String> list = new ArrayList<String>();
list.add("1");
list.add("a");
list.add("2");
list.add("b");
for (String s : list) {
if(s.matches("^[0-9]*$"))//数字类型
System.out.println(s);
}
}
#12
string类型的(比如“123”)可以先转成包装类,然后再转成基本数据类型。之后就可以比较大小了。
#13
package bros.provider.corporate.account;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class cs {
// System.out.println(UUID.randomUUID().toString());
public static void main(String[] args){
try {
BufferedReader strin=new BufferedReader(new InputStreamReader(System.in));
System.out.print("请输入一串数字:");
String str = strin.readLine();
System.out.println("第一个:"+str); //获取到了键盘的输入字符为多少
List list= new ArrayList();
list.add("dheh");
list.add(1314);
list.add(520);
list.add(750);
list.add(830);
list.add(12);
list.add(52);
list.add(520);
list.add(null);
list.add("dheh");
list.add("dheh");
String s = "[0-9]*";
Pattern pattern = Pattern.compile(s);
List listload= new ArrayList();
Matcher ma = pattern.matcher(list.toString());
while (ma.find()) {
if(ma.group().length()>0&&Integer.parseInt(ma.group())>Integer.parseInt(str)){
System.out.println("大于输入的有:"+ma.group());
listload.add(ma.group());
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
我写了一个简单的例子 你参考一下
如果思路不对你就在描述描述你的需求
我都已经听蒙圈了
#14
以上方法
list.add("1314");也是支持的
list.add("1314");也是支持的
#1
说错了,筛选出数字类型的,然后比较大小
#2
我想筛选出
不是数字的,然后
转化为int或者float???
#3
说反了,,,是数字的
#4
你刚开始学代码,怎么你的需求我都听不懂
list筛选数字,然后比大小,跟谁比 啊
比完了那,是存在另外一个地方啊,还是怎么回事啊
list筛选数字,然后比大小,跟谁比 啊
比完了那,是存在另外一个地方啊,还是怎么回事啊
#5
我觉的你现在需要去学一下语文,不是学代码,你着急了
#6
循环,正则判断每一个值
#7
现在的需求是,把上面的list里面的数字类型的值,跟longimputFloat 比较,longimputFloat 是输入的一个数字,然后比longimputFloat 大的存起来,存到listResnocapdataMaxDiamterResults这个list里面。
囧,我好像是太着急了,自己没有学好。
不知道这样描述可以不
#8
能不能随手写一行代码~给我参考一下,谢谢了
#9
我还有一个问题
if(longimputFloat < IntResnocapdataMaxDiamter)
这句话是你输入一个值,然后跟一个list比较?
不是循环list跟每一个比较?
是需要比list里面所有数字的值都大的话才存储起来吗?
if(longimputFloat < IntResnocapdataMaxDiamter)
这句话是你输入一个值,然后跟一个list比较?
不是循环list跟每一个比较?
是需要比list里面所有数字的值都大的话才存储起来吗?
#10
对的,longimputFloat是一个输入值,然后list里面有很多值,比longimputFloat大的都筛选出来。。。然后存储
#11
public static void main(String[] args) {
List<String> list = new ArrayList<String>();
list.add("1");
list.add("a");
list.add("2");
list.add("b");
for (String s : list) {
if(s.matches("^[0-9]*$"))//数字类型
System.out.println(s);
}
}
#12
string类型的(比如“123”)可以先转成包装类,然后再转成基本数据类型。之后就可以比较大小了。
#13
package bros.provider.corporate.account;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class cs {
// System.out.println(UUID.randomUUID().toString());
public static void main(String[] args){
try {
BufferedReader strin=new BufferedReader(new InputStreamReader(System.in));
System.out.print("请输入一串数字:");
String str = strin.readLine();
System.out.println("第一个:"+str); //获取到了键盘的输入字符为多少
List list= new ArrayList();
list.add("dheh");
list.add(1314);
list.add(520);
list.add(750);
list.add(830);
list.add(12);
list.add(52);
list.add(520);
list.add(null);
list.add("dheh");
list.add("dheh");
String s = "[0-9]*";
Pattern pattern = Pattern.compile(s);
List listload= new ArrayList();
Matcher ma = pattern.matcher(list.toString());
while (ma.find()) {
if(ma.group().length()>0&&Integer.parseInt(ma.group())>Integer.parseInt(str)){
System.out.println("大于输入的有:"+ma.group());
listload.add(ma.group());
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
我写了一个简单的例子 你参考一下
如果思路不对你就在描述描述你的需求
我都已经听蒙圈了
#14
以上方法
list.add("1314");也是支持的
list.add("1314");也是支持的