java笔记(第六课)

先贴上我的代码网址(acgit)

https://git.acwing.com/kubeilly/javaforstudy/-/tree/master/customer

本节内容

1:动态数组 Vector --(可以类比为链表),不安全,后续会采用另一种方式

2:课上小程序,从键盘上获取一个整数,统计各个位数的和

3:用vector修改之前的代码(更好的增删改查)

####

Vector的使用要引入:
import java.util.Vector;

//声明一个Vector数组
Vector v = new Vector();

//往数组中添加元素
v.add(1);
v.add(2);

//调用,取出数组中的值

!!!注意 v.get()函数返回Object类型,也就是返回一个对象类型,在赋值时要记得转换

v.get(0);//调用第一个元素
int tmp = ((Integer)v.get(0))://强制转换,否则报错

for(int i =0;i<v.size();i++)  //v.size()可以返回数组的大小
{
System.out.println(v.get(i))  //循环调用数组元素
}

//删除,删除可以有两种方式

1:remove(int index) //删除下标索引为i的元素

v.remove(0);//删除下标为0的元素

2:remove(Object o) //删除对象(暂时可以不用)

A a = new A();
v.remove(a);

###

课堂小程序:从键盘上获取一个整数,统计各个位数的和

我的代码:
import java.util.*;

public class Main
{
    public static void main(String [] args)
    {
       Scanner sc = new Scanner(System.in);
       int n = sc.nextInt();
       long sum = 0;
       while(n > 0)
       {
           int t = n%10;//取出各个位的数
           sum += t;//求和
           n/=10;   //将n减少一位
       }
       System.out.println(sum);
        
    }
}

//若输入数字非常大,可以考虑用String读入后将每一位化为整数求和

老师代码:

用到了System.in.read()函数,该函数要抛出异常,也就是在主函数加上这一段

 public static void main(String [] args) throws Exception

下面为完整代码:

import java.util.*;
import java.util.Vector;

public class Main
{
    public static void main(String [] args) throws Exception
    {
        //1:定义
       Vector v = new Vector();//声明一个动态数组用于存储每一位的值
       long sum = 0;//统计总和
        // 2:输入
       while(true)
       {
           int b = System.in.read();//读入的是ASCII码
           if(b==13||b==10)//当输入为回车时终止读入,回车的ASCII码为 13 和 10
           {
               break;
           }
           v.add(b-48); //0的ASCII码为48,故减去48,将每一位数存入数组
           
       }
       
        //3:计算总和
        
       for(int i = 0; i < v.size();i++)
       {
           sum += ((Integer)v.get(i));
       }
        //4:输出
       System.out.println(sum);
        
    }
}

####

最后便是完善银行程序,代码在开头已上传。

若是有不懂之处或是错误请提出,I am free ,欢迎!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值