黑马程序员技术交流社区
标题:
API集合第三次基础考试
[打印本页]
作者:
fuleigang
时间:
2017-3-20 13:31
标题:
API集合第三次基础考试
每次都是三道题,今天API和集合考试
第一题:
/*
* 统计一个键盘录入的字符串中大写字母字符,小写字母字符,数字字符出现的次数。(8分)
举例:Hello520World
结果:大写字母:2
数字字符:3
小写字母:8
1.识别输入的字符串的大小写和数字
2.将识别到的用计数器
*/
作者:
qishui
时间:
2017-3-20 19:54
private static void test01(String s) {
int num = 0, l = 0, u = 0;
if ("".equals(s) || s == null) {
System.out.println("数字、小写字母、大写字母为0个!");
return;
}
for (char ch : s.toCharArray()) {
if (ch >= '0' && ch <= '9')
num++;
if (ch >= 'a' && ch <= 'z')
l++;
if (ch >= 'A' && ch <= 'Z')
u++;
}
System.out.println("数字有:" + num);
System.out.println("小写字母有:" + l);
System.out.println("大写字母有:" + u);
}
作者:
zhao543
时间:
2017-3-20 20:31
印度一男子因与萨达姆几乎同名求职被拒40余次
作者:
亮仔开发
时间:
2017-3-20 22:35
怎么只有一道题,那两道呢
作者:
785026612
时间:
2017-3-21 00:04
完成了,等下面2题
作者:
fuleigang
时间:
2017-3-21 06:18
用多重方法列出来
作者:
fuleigang
时间:
2017-3-21 07:42
package Demo;
import java.util.Scanner;
/*
* 统计一个键盘录入的字符串中大写字母字符,小写字母字符,数字字符出现的次数。(8分)
举例:Hello520World
结果:大写字母:2
数字字符:3
小写字母:8
1.识别输入的字符串的大小写和数字
2.将识别到的用计数器
*/
public class Demo {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入");
String string =scanner.next();
char[]ch =string.toCharArray();
int count=0;
int count1=0;
int count2 = 0;
for (int i = 0; i < ch.length; i++) {
// System.out.print(ch[i]);
if(ch[i] >= 'A' && ch[i] <= 'Z' ){
count++;
}
if(ch[i] >= 'a' && ch[i] <= 'z' ){
count1++;
}
if(ch[i] >= '0' && ch[i] <= '9' ){
count2++;
}
}
System.out.println("大写字母:"+count);
System.out.println("数字字符:"+count2);
System.out.println("小写字母:"+count1);
}
}
作者:
fuleigang
时间:
2017-3-21 07:44
第二题
2: 我有如下一个字符串:”91 27 46 38 50”,请写代码实现最终输出结果是:”27 38 46 50 91”(10分)(答题过程中需采用到集合的相关知识点)
作者:
fuleigang
时间:
2017-3-21 07:45
package Demo2;
import java.util.*;
/*
* 我有如下一个字符串:”91 27 46 38 50”,请写代码实现最终输出结果是:
* ”27 38 46 50 91”(10分)(答题过程中需采用到集合的相关知识点)
*/
public class demo1 {
public static void main(String[] args) {
String s = "91 27 46 38 50 100 111";
String[] s1 = s.split(" +");
List<String>list = new ArrayList<>();
Arrays.sort(s1);
for(String s2:s1){
list.add(s2);
}
// Collections.sort(list);
for(String s3:list){
System.out.print(s3+" ");
}
}
}
作者:
fuleigang
时间:
2017-3-21 07:46
第三题
3、Map中有如下数据:{茄子=2, 黄瓜=2.5, 西红柿=5, 土豆=3, 豆角=3.5}
实现一个询问价格的方法(获取用户在控制台上输入的蔬菜名称,然后在该Map集合中查询对应的价格)有,则输出相对应的价格,如果没有则提示用户“已经卖完”
将黄瓜的价格上调1元(不能直接赋值3.5)
将所有蔬菜的价格大于3的蔬菜名称打印到控制台
作者:
fuleigang
时间:
2017-3-21 07:47
解答
package Demo3;
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
import java.util.Set;
/*
* Map中有如下数据:{茄子=2, 黄瓜=2.5, 西红柿=5, 土豆=3, 豆角=3.5}
实现一个询问价格的方法(获取用户在控制台上输入的蔬菜名称,
然后在该Map集合中查询对应的价格)有,则输出相对应的价格,如果没有则提示用户“已经卖完”
将黄瓜的价格上调1元(不能直接赋值3.5)
将所有蔬菜的价格大于3的蔬菜名称打印到控制台
*/
public class Demo1 {
public static void main(String[] args) {
Map<String, Double>map=new HashMap<>();
map.put("茄子", 2.0);
map.put("黄瓜", 2.5);
map.put("西红柿", 5.0);
map.put("土豆", 3.0);
map.put("豆角", 3.5);
//询价方法
price(map);
//将黄瓜的价格上调1元(
map.remove("黄瓜");
map.put("黄瓜", 3.0);
//所有蔬菜的价格大于3的蔬菜名称打印到控制台
Set<String> set = map.keySet();
for(String string :set){
double s = map.get(string);
if(s >=3.0){
System.out.println(string+" "+s);
}
}
}
//询问价格的方法
public static void price(Map<String, Double>map){
System.out.println("请输入蔬菜名");
// Set<String>set = map.keySet();
Scanner sc=new Scanner(System.in);
String st = sc.next();
if(map.containsKey(st)){
System.out.println(st+map.get(st));
}else{
System.out.println("商品卖完");
}
}
}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2