零基础学习Java语言——6、使用对象(1)[String操作解题]

简介: 零基础学习Java语言——6、使用对象(1)[String操作解题]

单词长度


题目内容:


你的程序要读入一行文本,其中以空格分隔为若干个单词,以‘.’结束。你要输出这行文本中每个单词的长度。这里的单词与语言无关,可以包括各种符号,比如“it's”算一个单词,长度为4。注意,行中可能出现连续的空格。


输入格式:


输入在一行中给出一行文本,以‘.’结束,结尾的句号不能计算在最后一个单词的长度内。


输出格式:


在一行中输出这行文本对应的单词的长度,每个长度之间以空格隔开,行末没有最后的空格。


输入样例:


It's great to see you here.


输出样例:


4 5 2 3 3 4


本题的三种解法:

import java.util.Scanner;
public class Main{
    public static  void main(String[] args){
        Scanner in = new Scanner(System.in);
//方法一 单独读入分别判断处理
        String src = in.next();
        String outPut = "";
        while(src.indexOf(".") == -1)
        {
            outPut += src.length() + " ";
            src = in.next();
        }
        if(src.length()-1 == 0 ){  //没有长度的不需要输出0
            if (!outPut.equals("")){
                outPut = outPut.substring(0, outPut.length()-1);
            }
        }
        else{
            outPut += src.length()-1;
        }
        System.out.println(outPut);
    }
}

1.png

import java.util.Scanner;
public class Main{
    public static  void main(String[] args){
        Scanner in = new Scanner(System.in);
//方法二  读行,split分割处理
        String src = in.nextLine();
        String outPut = "";
        if (src.indexOf(" ") != -1)
        {
            String[] s = src.split(" ");
            int m = s.length;
            for (int i = 0; i < m-1;i++)
            {
                if (s[i].length() > 0) {
                    outPut += s[i].length() + " ";
                }
            }
            if(s[m-1].length()-1 == 0 )//没有长度的不需要输出0
            {
                if (!outPut.equals("")){
                    outPut = outPut.substring(0, outPut.length()-1);
                }
            }
            else{
                outPut += s[m-1].length()-1;
            }
        }
        else
        {
            if(src.length()-1 != 0 )//没有长度的不需要输出0
            {
                outPut += src.substring(0,src.indexOf(".")).length();
            }
        }
        System.out.println(outPut);
    }
}

1.png

import java.util.Scanner;
public class Main{
    public static  void main(String[] args){
        Scanner in = new Scanner(System.in);
//方法三   读行,indexOf处理
        String src = in.nextLine();
        String outPut = "";
        int index = src.indexOf(" ");
        while(index != -1) {
            String per = src.substring(0,index);
            src = src.substring(index+1);
            if (per.length() > 0) {
                outPut += per.length() + " ";
            }
            index = src.indexOf(" ");
        }
        if(src.length()-1 == 0 ){  //没有长度的不需要输出0
            if (!outPut.equals("")){
                outPut = outPut.substring(0, outPut.length()-1);
            }
        }
        else{
            outPut += src.length()-1;
        }
        System.out.println(outPut);
    }
}

1.png

mooc上的课程习题,边学习边记录!

目录
相关文章
|
1天前
|
存储 缓存 Java
|
1天前
|
数据采集 前端开发 测试技术
《手把手教你》系列技巧篇(三十一)-java+ selenium自动化测试- Actions的相关操作-番外篇(详解教程)
【4月更文挑战第23天】本文介绍了网页中的滑动验证码的实现原理和自动化测试方法。作者首先提到了网站的反爬虫机制,并表示在本地创建一个没有该机制的网页,然后使用谷歌浏览器进行验证。接着,文章详细讲解了如何使用WebElement的click()方法以及Action类提供的API来模拟鼠标的各种操作,如右击、双击、悬停和拖动。
6 2
|
2天前
|
设计模式 JavaScript Java
[设计模式Java实现附plantuml源码~行为型] 对象状态及其转换——状态模式
[设计模式Java实现附plantuml源码~行为型] 对象状态及其转换——状态模式
|
2天前
|
存储 编解码 算法
Java 的 String StringBuilder StringBuffer(上)
Java 的 String StringBuilder StringBuffer
24 0
|
2天前
|
Java Nacos 开发者
Java从入门到精通:4.2.1学习新技术与框架——以Spring Boot和Spring Cloud Alibaba为例
Java从入门到精通:4.2.1学习新技术与框架——以Spring Boot和Spring Cloud Alibaba为例
|
2天前
|
Dubbo Java 应用服务中间件
Java从入门到精通:3.2.2分布式与并发编程——了解分布式系统的基本概念,学习使用Dubbo、Spring Cloud等分布式框架
Java从入门到精通:3.2.2分布式与并发编程——了解分布式系统的基本概念,学习使用Dubbo、Spring Cloud等分布式框架
|
2天前
|
SQL Java 数据库连接
Java从入门到精通:2.3.1数据库编程——学习JDBC技术,掌握Java与数据库的交互
ava从入门到精通:2.3.1数据库编程——学习JDBC技术,掌握Java与数据库的交互
|
2天前
|
设计模式 存储 前端开发
Java从入门到精通:2.2.1学习Java Web开发,了解Servlet和JSP技术,掌握MVC设计模式
Java从入门到精通:2.2.1学习Java Web开发,了解Servlet和JSP技术,掌握MVC设计模式
|
2天前
|
Java API
Java从入门到精通:2.1.5深入学习Java核心技术之文件操作
Java从入门到精通:2.1.5深入学习Java核心技术之文件操作
|
2天前
|
并行计算 算法 安全
Java从入门到精通:2.1.3深入学习Java核心技术——掌握Java多线程编程
Java从入门到精通:2.1.3深入学习Java核心技术——掌握Java多线程编程