首页 > 编程语言 >头歌(educoder)第 6 章 Java面向对象之常用类

头歌(educoder)第 6 章 Java面向对象之常用类

时间:2023-10-04 14:23:22浏览次数:52  
标签:educoder Java String System 头歌 value1 println public out

头歌(educoder)第 6 章 Java面向对象之常用类

目录

Java面向对象 - 常用类(初级)

Java面向对象 - String类

Java面向对象 - 常用类(初级)

第1关 String类

package step1;

import java.util.Scanner;

public class StringLearning {

    public static void main(String[] args) {

        Scanner scanner = new Scanner(System.in);
        String stringExample = scanner.next();
        String endStr = " end";
        // ---------------------Begin------------------------
      System.out.println("原字符串为:"+stringExample);
      
      System.out.println("字符串长度为:"+stringExample.length());

      System.out.println("转换成大写字符串:"+stringExample.toUpperCase());
      System.out.println("转换成小写字符串:"+stringExample.toLowerCase());
      
     System.out.println("第3-7的字符串内容为:"+stringExample.substring(3,7));
     
    System.out.println("字符串相加后:"+stringExample.concat(endStr));




        // ---------------------End------------------------

    }
}

第2关:StringBuffer类

package step2;

import java.util.Scanner;

public class StringBufferLearning {


    public static void main(String[] args) {

        Scanner scanner = new Scanner(System.in);
        String stringExample = scanner.next();
        // ---------------------Begin------------------------
       
      StringBuffer sb = new StringBuffer(stringExample);

      System.out.println("添加数据后:"+sb.append("educode"));

      System.out.println("删除5-8的字符串后:"+sb.delete(5,8));

      System.out.println("替换7-13的字符串后:"+sb.replace(7,13,"world"));

        System.out.println("截取1-10的字符串为:"+sb.substring(1,10));
        System.out.println("反转后的字符串为:"+sb.reverse());







       

        // ---------------------End------------------------

    }
}

第3关:Math类

package step3;

import java.util.Scanner;

public class MathClass {
    public static void main(String[] args) {

        Scanner scanner = new Scanner(System.in);
        int value1  = scanner.nextInt();
        int value2 = scanner.nextInt();
        // ---------------------Begin------------------------
        /**
         1.求出变量value1的绝对值
         2.求出value1的3次幂
         3.求出value1的二次方根
         4.求出value1的sin值
         5.求出value1与value2中的较大者
         * */
         //   
         System.out.println("value1=" + value1+", value2=" + value2 );

        System.out.println("value1的绝对值为:"+Math.abs(value1));
        System.out.println("value1的3次幂为:"+String.format("%.6f", Math.pow(value1,3)));
        System.out.println("value1的2次方根为:"+String.format("%.6f", Math.sqrt(value1)));
        System.out.println("value1的sin值为:"+String.format("%.6f",Math.sin(value1)));
        System.out.println("value1与value2中的较大者为:"+Math.max(value1,value2));



       

       
        // ---------------------End------------------------
    }
}

第4关 Random类

package step4;

import java.util.Random;

public class RandomClass {
    public static void main(String[] args) {

        // ---------------------Begin------------------------
       Random r1 = new Random(2022);
       for(int i = 0; i < 5;i++) {
           System.out.println(r1.nextInt());
          
           
       }

        for(int i = 0; i<5;i++) {
             System.out.println(r1.nextDouble());
        }



        // ---------------------End------------------------

    }
}

第5关:知识回顾

  • 1、String s = new String(“abcd”);创建了几个StringObject?

  • 2、求a的b次方,其表达式为:Math.pow(a,b)

  • 3、String类型变量所指向内存空间中的内容是不能被改变的 (不考虑反射)

  • 4、StringBuilder类是StringBuffer类的替代类,两者的共同点是都是可变长度字符串,其中线程安全的类是▁▁▁

    填空1答案:

Java面向对象 - String类

第1关 length()方法与compareTo()方法的使用 - 花名册

package step1;

import java.util.Scanner;

public class Roster {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        /********** Begin *********/
        String a = scanner.nextLine();
        String roster1 = new String(a);

         String b = scanner.nextLine();
        String roster2 = new String(b);

        System.out.println(roster1.length());
        System.out.println(roster2.length());



        if(roster1.compareTo(roster2) == 0) {
            System.out.println("相同");
        }else {
            System.out.println("不相同");
        }
        
        


        /********** End *********/
    }
}

第2关 substring()方法与indexOf()方法的使用 - 姓名查找

package step2;

import java.util.Scanner;

public class NameSearch {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        /********** Begin *********/
        String data=scanner.next();
        String name=scanner.next();
       int i = 0;
       do {
           // 打印name 在indexOf的索引
           System.out.println(data.indexOf(name,i));
           // i = 
           // i 从该次的下一次开始寻找
           i = data.indexOf(name,i) + name.length();
       }while(data.indexOf(name,i) != -1);  // 直到找不到为止




        /********** End *********/
    }
}

第3关 String串类操作 - 文件名与邮箱验证

package step3;

public class HelloWorld {

	public void judge(String fileName,String email){
		//请在此添加实现代码
/********** Begin **********/
        int a1 = fileName.indexOf(".java");
        int a2 = fileName.lastIndexOf(".java");
        if(a1 != 0 && a1 != -1 && a2 == fileName.length()-5){
            // 判断字符串是否在第一位
             //  判断是否有该字符串
            // 判断是否在最后一位
            System.out.println("Java文件名正确");
        }else {
            System.out.println("Java文件名无效");
        }
        int a3 = email.indexOf("@");
        int a4 = email.lastIndexOf("@");

         int a5 = email.lastIndexOf(".");
        // a3 == a4 最后一个@和第一个@索引相等
         if(a3 != -1 && a5>a3 && a3 == a4) {
             System.out.println("邮箱名正确");
         }else {
             System.out.println("邮箱名无效");
         }


/********** End **********/
	}
	
	
}

第4关 StringBuffer类的定义和使用 - 字母反转

package step4;

public class Reverse {
    public static StringBuffer start(String data) {
        StringBuffer ans = new StringBuffer();
        /********** Begin *********/
        // 分割
        String[] names = data.split(" ");
       
       for(int i = 0; i < names.length;i++) {
           // 创建StringBuffer 
           StringBuffer stringbuffer = new StringBuffer(names[i]);
           
           stringbuffer.reverse();
           //  
           ans.append(stringbuffer+" ");

           
           
           
       }
       


       


        /********** End *********/
        return ans;
    }
}

标签:educoder,Java,String,System,头歌,value1,println,public,out
From: https://www.cnblogs.com/bky111/p/17742219.html

相关文章

  • ARM 架构的 JVM(Java 虚拟机)最高的免费版本是 OpenJDK 17
    目前(截至2023年9月),ARM架构的JVM(Java虚拟机)最高的免费版本是OpenJDK17。OpenJDK17是JavaSE17的开源实现,由Oracle和其他开源贡献者共同维护。你可以在ARM架构的设备上安装和使用OpenJDK17,它包含了JavaSE17的所有功能和改进。要在ARM架构的设备上安装Op......
  • Java 18发布:甲骨文公司已开始将Java纳入其软件许可审计
    Java18发布:甲骨文公司已开始将Java纳入其软件许可审计 转载wx5b8b6568896132023-06-1601:22:35文章标签数据库编程语言java大数据人工智能文章分类Html/CSS前端开发阅读数171 2022年3月22日,甲骨文公司宣布推出世界头号编程语言和开发平台的最新版本-Java18。......
  • java多线程中的 锁(暂时记录)
    P150-lock----锁----那一节publicclassThreadExtendextendsThread{  staticintticket=0;  staticLocklock=newReentrantLock();  publicvoidrun(){    while(true){      lock.lock();      if(ticket......
  • JavaScript中获取URL中参数值的方法
    方法一:正则法functiongetQueryString(name){varreg=newRegExp('(^|&)'+name+'=([^&]*)(&|$)','i');varr=window.location.search.substr(1).match(reg);if(r!=null){returnunescape(r[2]);......
  • 【后端开发】01-Java基础语法
    Java基础语法目录1.概述1.1.语言特性1.2.开发平台1.3.开发环境1.4.开发步骤1.5.注释2.变量与运算符2.1.关键字/保留字2.2.标识符2.3.变量2.4.常用数据类型2.4.1.基本数据类型(8种)2.4.2.引用数据类型2.4.3.数据类型转换2.5.运算符2.5.1.算术运算符(7个)2.5.2.关系运......
  • 基于Java的摄影素材分享网站的设计与实现(亮点:活动报名、点赞评论、图片下载、视频下载
    (摄影分享网站)网上大部分的毕设套路如下:在b站发毕设项目的演示视频,让你免费领取,你领取完发现代码不全或者数据库少表,根本跑不起来!如果要调试则收费300:sweat_smile:真的是恶心至极有没有!某宝找人帮忙写,简单来说比第一种行为靠谱,但是很贵!说是可以免费修改其实修改基本排不上队,......
  • Java之对象内存分析
    相信大家有时候在读代码的时候应该都会有以下情况:这个对象本定义在上面,乱跑什么?怎么又到下面去了?欸?我明明改变了这个对象的值,怎么没变呢?要想搞清楚某一对象在程序中是怎样活蹦乱跳的,首先我们要对其内存的状况要有些了解。在java中,类是属于引用数据类型,而引用数据类型最大的......
  • Java语言基础知识全总结
    一.Java的优点1.      跨平台性。一次编译,到处运行。Java编译器会将Java代码编译成能在JVM上直接运行的字节码文件,C++会将源代码编译成可执行的二进制代码文件,所以C++执行速度快2.      纯面向对象。Java所有的代码都必须在类中书写。C++兼具面向对象和面向过程的特......
  • Java新特性中的Preview功能如何运行和调试
    在每个Java新版本发布的特性中,都会包含一些Preview(预览)功能,这些功能主要用来给开发者体验并收集建议。所以,Preview阶段的功能并不是默认开启的。如果想体验某个Java版本中的Preview功能,您还需要做一些设置才能把程序跑起来。下面以IDEA2023.2为例,演示为Java21开启Preview功能......
  • JAVA入门——方法引用
    把已经有的方法拿过来用,当作函数式接口中抽象方法的方法体引用出必须是函数式接口被引用的方法必须已经存在被引用方法的形参和返回值需要和抽象方法保持一致被引用方法的功能要满足当前要求::双冒号是方法引用符 方法引用的分类引用静态方法:格式类名::静态......