308cdde3face35c5bf06f2b8972524a.png
请问下,卢老师这节课的System.out.println(Thread.isAlive()+" 4"); 在main方法下主线程里主线程阻塞子线程2结束后打印的4 为什么是子线程的而不是主线程的
为什么我的这里输入write是错的但是输入wait是对的,但是后续跟着打代码就开始报错?
public class Test03 { public static void main(String[] args) { /** * 调用泛型定义的可变参数类型的方法 */ MethodGeneric methodGeneric1 = new MethodGeneric(); int []arr0 = new int[]{11,22,33}; Integer []arr =new Integer[]{1,2,3}; methodGeneric1.method(arr0); methodGeneric.method(arr); } } public class MethodGeneric{ public <T> void method(T ...args){ for (T i :args){ System.out.println(i); } } }
输出结果为:
老师,传入int数组输出的是数组本身;传入Integer数组输出的是数组元素;这是为什么?
老师,请问"utf-8"是什么意思?
看到好多遍了,不太懂
老师请问,复制粘贴代码到idea中,代码都在一行。有什么好的方法解决吗?
老师为什么我的程序输出来的都是-1呢?哪里出错了呢?
UDP.zip
代码正常运行,就是没有现实字符串的传递
/** * 定义泛型类 */ public class Generic<T> { private T flag; private T name; public void setFlag(T flag){ this.flag = flag; } public T getFlag(){ return this.flag; } public void setName(T name){ this.name = name; } public T getName(){ return this.name; } } /** *测试类 * public class Test01 { public static void main(String[] args) { Generic<String> generic = new Generic<>(); generic.setName("yazhai"); System.out.println(generic.getName()); Generic<Integer> generic1 = new Generic<>(); generic1.setFlag(20000608); Integer flag1 = generic1.getFlag(); System.out.println(flag1); } }
老师,我要给name赋值为String类型创建了一个Generic对象;
要是还得给flag赋值为Integer类型,就必须在创建一个新的Generic对象吗?
老师可以列出
所有常用容器的最大特点
和
普遍用于什么情况(简单的例子即可)
嘛?
我将
return this.username.compareTo(o.getUsername());
换成了
(..hashCode() > o..hashCode()) { -}
也能运行,效果一样
我想请问建议这样使用吗?
两者的使用区别?
老师你好,这是一个双向链表中添加元素的方法。第一种写法不会报错,第二种会报错,报的是空指针异常NullPointerException。请问怎么理解
public void add(E element) { this.linkedLast(element); } private void linkedLast(E element){ //首先获取尾部节点 Node t = this.tail; //创建节点对象 Node node1 =new Node(t,null,element); this.tail=node1;//仅仅是这个位置等式两边变了一下 if(t==null){ this.head=node1; }else{ t.next=node1; } this.size++; }
public void add(E element) { this.linkedLast(element); } private void linkedLast(E element){ //首先获取尾部节点 Node t = this.tail; //创建节点对象 Node node1 =new Node(t,null,element); node1 = this.tail;//仅仅是这个位置等式两边变了一下 if(t==null){ node1 = this.head; }else{ node1 = t.next; } this.size++; }
老师这个是什么问题
package com.bjxst; public class MyDoublyLinkedList<E> implements MyList<E> { private Node head; private Node tail; private int size; @Override public void add(E element) { this.linkedLast(element); } private void linkedLast(E element){ //首先获取尾部节点 Node t = this.tail; //创建节点对象 Node node1 =new Node(t,null,element); node1=this.tail; if(t==null){ node1 =this.head; }else{ node1 = t.next; } this.size++; } @Override public E get(int index) { //对Index做合法性校验 this.checkIndex(index); //根据节点对象查找位置 Node<E> node = this.getNode(index); return node.item; } private void checkIndex(int index){ if(!(index>=0&&index<this.size)){ throw new IndexOutOfBoundsException("index"+index+"size"+size); } } private Node getNode(int index){ if (index<(this.size>>1)){ Node node = this.head; for (int i=0;i<index;i++){ node = node.next; } return node; }else{ Node node = this.tail; for (int i=this.size-1;i>index;i--){ node = node = node.prev; } return node; } } @Override public int size() { return this.size; } @Override public E remove(int index) { //对index进行合法性校验 this.checkIndex(index); //根据指定位置获取节点对象 Node<E> node = this.getNode(index); //获取节点对象中的元素 E item = node.item; //判断当前节点是否为头节点 if(node.prev ==null){ node.next=this.head; }else{ node.prev.next = node.next; } //判断当前节点是否为尾结点 if(node.next==null){ node.prev = this.tail; }else{ node.next.prev = node.prev; } node.next =null; node.prev= null; node.item =null; this.size--; return item; } //创建节点内部类 class Node<E>{ E item; Node<E> prev; Node<E> next; Node(Node<E> prev,Node<E> next,E item){ this.prev = prev; this.next=next; this.item = item; } } public void addFirst(E element){ this.linkFirst(element); } private void linkFirst(E element){ //获取头结点对象 Node head = this.head; Node node1 = new Node(null,head,element); //将新节点定为头节点 node1 =this.head; if(head==null){ node1 = this.tail; }else{ node1=head.prev; } this.size++; } public void addLast(E element){ this.linkedLast(element); } public static void main(String[] args) { MyList<String> myList = new MyDoublyLinkedList<>(); myList.add("a"); myList.add("b"); myList.add("at"); myList.add("e"); myList.add("e"); System.out.println(myList.remove(3)); } }
老师,我看了视频中那两个fis 和fos没有被实例化,那我是不是可以不用写那个,到时直接关bis和bos就好了?(FileInputStream()会不会关掉?)
非常抱歉给您带来不好的体验!为了更深入的了解您的学习情况以及遇到的问题,您可以直接拨打投诉热线:
我们将在第一时间处理好您的问题!
关于
课程分类
百战程序员微信公众号
百战程序员微信小程序
©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园网站维护:百战汇智(北京)科技有限公司 京公网安备 11011402011233号 京ICP备18060230号-3 营业执照 经营许可证:京B2-20212637