怎么易懂

JAVA-阿姚 2019-07-26 09:10:24
计算字符串“23743298”奇数位的和偶数位的和
...全文
55 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
qybao 2019-09-17
  • 打赏
  • 举报
回复
呵呵。。。

public class Sample {
public static void main(String[] args) {
try {
String s = "23743298";
s = s.replaceAll("", " ").substring(1);
Scanner sc = new Scanner(s);
int cnt = 1, sumO = 0, sumE = 0;
while(sc.hasNext()) {
if (cnt%2 == 1) {
sumO += sc.nextInt();
} else {
sumE += sc.nextInt();
}
cnt++;
}
System.out.printf("sumO=%d, sumE=%d", sumO, sumE);
} catch (Throwable e) {
e.printStackTrace();
}
}
}
沁海棠 2019-09-17
  • 打赏
  • 举报
回复

    public static void main(String[] args) {
        Map<String, Integer> map = sumOfNum("23743298", "oddCount", "evenCount");
        System.out.println(map.get("oddCount"));
        System.out.println(map.get("evenCount"));
    }
    public static Map<String,Integer> sumOfNum(String str,String oddCountKey,String evenCountKey){
        String[] split = str.split("");
        int oddCountTemp = 0;
        int evenCountTemp = 0;
        for (String s : split) {
            int i = Integer.parseInt(s);
            if(i%2 == 0){
                evenCountTemp += i;
            }else{
                oddCountTemp += i;
            }
        }
        Map<String,Integer> map = new HashMap<>();
        map.put(oddCountKey,oddCountTemp);
        map.put(evenCountKey,evenCountTemp);
        return map;
    }

Waiting Alone 2019-07-26
  • 打赏
  • 举报
回复
String s = "23743298"; List<Integer> list = new ArrayList<Integer>(); for (int i = 0; i < s.length(); i++) { list.add(Integer.valueOf(s.substring(i, i + 1))); } // 奇数和 int oddCount = 0; // 偶数和 int evenCount = 0; for (int i = 0; i < list.size(); i++) { if (list.get(i) % 2 == 0) { evenCount += list.get(i); } else { oddCount += list.get(i); } } System.out.println("奇数和:" + oddCount); System.out.println("偶数和:" + evenCount);
淡青の月 2019-07-26
  • 打赏
  • 举报
回复
public static void main(String[] args) {
sumOfNum("23743298");
}
public static void sumOfNum(String str) {
int sumOfOdd = 0;
int sumOfEven = 0;
int index = 1;
Integer num = Integer.parseInt(str);
while(index <= str.length()) {
if(index%2 == 1) {
sumOfOdd += num%10;
}else {
sumOfEven += num%10;
}
num /= 10;
index++;
}
System.out.println("奇数位的和为"+sumOfOdd);
System.out.println("偶数位的和为"+sumOfEven);
}

58,454

社区成员

发帖
与我相关
我的任务
社区描述
Java Eclipse
社区管理员
  • Eclipse
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧