精华内容
下载资源
问答
  • 我试图在2d阵列(square-matix)中找到负数的计数。 在矩阵中,如果你从上到下,左边写入数字增加。 这里的逻辑是从最后一列开始,然后继续向左。 如果找到neg num,则增加行索引并以相同的方式继续直到最后一行。 我...

    我试图在2d阵列(square-matix)中找到负数的计数。 在矩阵中,如果你从上到下,左边写入数字增加。 这里的逻辑是从最后一列开始,然后继续向左。 如果找到neg num,则增加行索引并以相同的方式继续直到最后一行。 我在java代码中得到错误但在python中没有。

    public class O_n

    {

    public static void main(String[] args)

    {

    int firstarray[][] = {{-2,-1,0},{-1,0,1},{0,1,2}};

    int secondarray[][] = {{-4,-3,-2},{-3,-2,-1},{-2,-1,0}};

    System.out.print ("First array has"+count_neg(firstarray));

    System.out.println("negative numbers");

    System.out.print ("Second array has"+count_neg(secondarray));

    System.out.println("negative numbers");

    }

    public static int count_neg(int x[][]){

    int count = 0;

    int i = 0; //rows

    int j = x.length - 1; //columns

    System.out.println("max column index is: "+j);

    while ( i >=0 && j

    if (x[i][j] < 0){ // negative number

    count += (j + 1);// since j is an index...so j + 1

    i += 1;

    }

    else { // positive number

    j -= 1;

    }

    }

    return (count);

    }

    }

    我得到了这个输出

    max column index is: 2

    Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: -1

    at O_n.count_neg(O_n.java:22)

    at O_n.main(O_n.java:9)

    /home/eos/.cache/netbeans/8.1/executor-snippets/run.xml:53: Java

    returned: 1

    BUILD FAILED (total time: 0 seconds)

    这段代码有什么问题? 同样的事情在python ...

    def count_neg(array):

    count = 0

    i = 0 # row

    j = len(array) -1 # col

    # since we are starting from right side

    while j >= 0 and i < len(array):

    if array[i][j] < 0:

    count += (j + 1)

    i += 1

    else:

    j -= 1

    return count

    print(count_neg([[-4,-3,-1,1],[-2,-2,1,2],[-1,1,2,3],[1,2,4,5]]))

    展开全文
  • Java/Python 负数取余的不同 在Java写循环数组时,发现了取余(%)操作和设想的不太一样。 例如, -1 % 16 在Python中结果为15, 而在Java中为-1. 作为数组索引,当然是想让取余结果为正数!所以只好加了一行判断。 ...

    Java/Python 负数取余的不同


    在Java写循环数组时,发现了取余(%)操作和设想的不太一样。
    例如, -1 % 16 在Python中结果为15, 而在Java中为-1.
    作为数组索引,当然是想让取余结果为正数!所以只好加了一行判断。

    if (mod < 0) mod += 16;
    

    事后在stack overflow上找到了原因,

    The problem here is that in Python the % operator returns the modulus and in Java it returns the remainder. These functions give the same values for positive arguments, but the modulus always returns positive results for negative input, whereas the remainder may give negative results.

    简单来说,Python返回的是模数,模数为正数。Java返回的是余数,余数和被除数同号。举个栗子:

    int a = -1 % 5; // Java: a = -1 Python: a = 4
    int b = 1 % (-5); // Java: b = 1 Python: b = 1
    
    展开全文
  • 解决此问题的最简单方法是不将负索引传递给list.remove().发生此第二个异常的原因是remove执行部分范围检查,该检查仅检查传递的索引是否太大.它不会检查它是否为负,因为在这种情况下,它依赖于支持数组的访问来引发...

    解决此问题的最简单方法是不将负索引传递给list.remove().

    发生此第二个异常的原因是remove执行部分范围检查,该检查仅检查传递的索引是否太大.它不会检查它是否为负,因为在这种情况下,它依赖于支持数组的访问来引发异常.

    因此,对于负索引,在引发ArrayIndexOutOfBoundsException之前,将ArrayList的modCount递增.结果,在捕获此异常后尝试继续遍历列表将抛出ConcurrentModificationException.

    public E remove(int index) {

    rangeCheck(index);

    modCount++;

    E oldValue = elementData(index); // ArrayIndexOutOfBoundsException is thrown here

    int numMoved = size - index - 1;

    if (numMoved > 0)

    System.arraycopy(elementData, index+1, elementData, index,

    numMoved);

    elementData[--size] = null; // clear to let GC do its work

    return oldValue;

    }

    请注意list.remove(1000)不会导致此问题,因为在ModCount递增之前将抛出IndexOutOfBoundsException.

    当然,如果元素删除成功,则ConcurrentModificationException仍然可能失败,因为在迭代List时安全地从List删除元素的唯一方法是使用Iterator的remove()方法.

    还有一件事-我不确定您是否打算调用public E remove(int index)或public boolean remove(Object o).前者(由编译器选择的)尝试删除指定索引处的元素,而后者(如果找到)则删除指定元素.

    对于List< Integer&gt ;,即使您要按元素删除,将int传递给该方法也将尝试按索引删除.如果要按元素删除,则应传递引用类型-list.remove(Integer.valueOf(-1)).

    展开全文
  • 我的这个问题是在用到表格时遇到的,大概就是在表格里不时的加入内容和删除, 我在网上也查了好几天,虽然都有说一下,但就是没有说明根本原因在那,我, 没办法了,就只能靠自己了 我也是想了2天晚上才想出来的,我是上夜班...

    我的这个问题是在用到表格时遇到的,大概就是在表格里不时的加入内容和删除,

    我在网上也查了好几天,虽然都有说一下,但就是没有说明根本原因在那,我,

    没办法了,就只能靠自己了

    我也是想了2天晚上才想出来的,我是上夜班的,那个苦呀,

    说一下原因吧,

    第一个;

    就是你要加入表格的内容的行数 大于 表格创建时设置的行数了,我的就 这个,你说气不气…
    解决的方法就是,在加入内容之前读取内容的长度,把这个长度赋值给表格 像这样
    ,注意 e 这个赋值就好了
    if ((gx_id_dx1.size()) > (id_dx1.size())) {
    // 读取数据条数
    // int e = zhutifangfa.kjsd22(“gx_id”, “22”);// 调用方法,得到条数
    e = gx_id_dx1.size();// 调用方法,得到条数
    }
    if ((gx_id_dx1.size()) == (id_dx1.size())) {
    // 读取数据条数
    // int e = zhutifangfa.kjsd22(“gx_id”, “22”);// 调用方法,得到条数
    e = gx_id_dx1.size();// 调用方法,得到条数
    }
    if ((gx_id_dx1.size()) < (id_dx1.size())) {
    // 读取数据条数
    // int e = zhutifangfa.kjsd22(“gx_id”, “22”);// 调用方法,得到条数
    e = id_dx1.size();// 调用方法,得到条数
    }

    // System.out.println(“有多少条内容 ;” + e);

    	// 创建表格
    
    	int i = 0;
    
    	a = new Object[e + 4][10];// 这个就是表格 参数一 是行数,我多加4行保险用的,参数二 是列数 
    

    有这方面问题的朋友可以参考一下,

    第二个;

    用表格一般要DefaultTableModel model = new DefaultTableModel(a, tableHead) {
    这个的吧,没错,就是这个,就是这会报错,

    你做表格时,一定要注意表格的行和列数是不是对应的,不能不写 一定要全 就算没有内容也要给个 “0”,我是这样认为的,反正在下是这样搞定的,

    写这个出来不是为别的,就是我在这个网站上也看了不少的文章学了不少,先谢谢这行朋友的分享,我有这个问题,我在网站上没有找到,我就分享一下,希望可以帮到有需要的朋友,

    展开全文
  • 当没有']'字符或它出现在[〜之前]时,会出现例外(带负数)。如果你想找到[〜...]的所有可能性,你也可以让正则表达式完成这项工作:importjava.util.regex.Matcher;importjava.util.regex.Pattern;staticPatternp=...
  • 使用 jdk 1.8 lambda forEach 对 ArrayList 遍历,数组越界,索引负数 -15591,不懂为什么。先改成了 fori 遍历,增加判空逻辑,先记录下,待明白后整理 堆栈 java.lang.ArrayIndexOutOfBoundsException: -15591 ...
  • Java中字符串indexof() 的使用方法

    万次阅读 多人点赞 2016-07-05 15:48:34
    Java中字符串中子串的查找共有四种方法(indexof()) indexOf 方法返回一个整数值,...如果它比最大的字符位置索引还大,则它被当作最大的可能索引Java中字符串中子串的查找共有四种方法,如下: 1、int indexOf(S...
  • /*索引表实现十进制到16进制转换,正负数均可*/ class DecToHex_Table { public static void toBin(int num) { int step=1; char []tab={'0','1'}; char []rec=new char[32]; int pos=rec.length; while...
  • Java数组备忘录

    千次阅读 2015-06-28 11:53:40
    前言最近用Java做ACM题目的时候,经常忘记数组如何实现静态初始化,所以这里记录...数组索引起始为0,负数索引Java中是无效的。并且,和C语言数组不同,Java中的数组会进行越界判断,无效的索引会抛出ArrayIndexOutOf
  • 1)数组在Java中是一个对象,数组实例...2)数组索引起始为0,负数索引Java中是无效的,会抛出ArrayIndexOutOfBoundException ,如果你尝试用无效的索引访问数组,这个无效的索引可能是一个负索引,或者是大于等于...
  • Java BitSet

    2015-07-10 11:30:00
    索引从0开始,负数索引会异常,位向量的每个位都有一个boolean值,默认情况下,初始值都是false。 BitSet 表示位值时实际使用空间的位数由size()方法返回,返回值是64的倍数,最小是64。length()方法返回的是实际...
  • Java字符串charAt()Java 字符串 charAt()方法返回给定索引号的char值。索引号从0开始到n-1,其中n是字符串的长度。如果给定的索引号大于或等于此字符串长度或负数,则返回StringIndexOutOfBoundsException。内部实现...
  • Java常见异常

    2019-10-08 05:32:34
    1. runtimeException子类: 1、 java.lang....当对数组的索引值为负数或大于等于数组大小时抛出。 2、java.lang.ArithmeticException 算术条件异常。譬如:整数除零等。 3、java.lang.NullPointerEx...
  • 数组索引起始为0,负数索引Java中是无效的,会抛出ArrayIndexOutOfBoundException 数组存储在Java堆的连续内存空间,所以如果你创建一个大的索引,你可以有足够的堆空间直到抛出OutofmemoryError,因为请求的...
  • Java 数组java.lang.ArrayIndexOutOfBoundsExceptionJava支持...如果请求负数或大于或等于数组大小的索引,则JAVA将抛出ArrayIndexOutOfBounds异常。这不像C / C ++那样没有绑定检查的索引。ArrayIndexOutOfBounds...
  • Python基础(二):列表和元组日期:2015年10月10日 作者:雨水... hello[0]'H'Python还支持负数索引,这是Java等语言所没有的特点。当使用负数索引时,Python从右边,也就是从最后1个元素开始计数,最后一个元素的位...
  • Java的部分异常和错误解释java.lang.ArithmeticException...当对数组的索引值为负数或大于等于数组大小时抛出。java.lang.ArrayStoreException数组存储异常。当向数组中存放非数组声明类型对象时抛出。java.lang.Cl...
  • java异常概述

    2017-12-02 10:26:10
    异常关系 在Java中提供了一些异常用来描述经常发生的错误,对于这些异常,有的需要程序员进行捕获处理或声明抛出,有的是由Java虚拟机自动进行捕获处理。...当对数组的索引值为负数或大于等于数组大小时抛出。
  • 文章收录地址:Java-Bang 专注于系统架构、高可用、高性能、高并发类技术分享 众所周知,异常处理的两大组成要素是抛出异常和捕获异常。...举例来说,Java 虚拟机在执行读取数组操作时,发现输入的索引值是负数,故.
  • JAVA异常

    2010-06-13 14:58:00
    当对数组的索引值为负数或大于等于数组大小时抛出。 java.lang.ArrayStoreException 数组存储异常。当向数组中存放非数组声明类型对象时抛出。 java.lang.ClassCastException 类造型异常。
  • Java学习笔记

    2018-10-07 17:44:43
    Java中常见的异常 runtimeException子类 ...当对数组的索引值为负数或大于等于数组大小时抛出。 ArithmeticException 算术条件异常。譬如:整数除零等。 NullPointerException 空指针...
  • java.lang.ArithmeticException:算术条件...当对数组的索引值为负数或大于等于数组大小时抛出。java.lang.ArrayStoreException:数组存储异常。当向数组中存放非数组声明类型对象时抛出。java.lang.ClassCastExce...
  • java 异常处理

    2020-03-05 20:57:50
    什么是异常处理 异常处理是基于面向对象的一种运行时错误的处理机制,通过对异常问题的封装,实现对用户的非法操作、参数设置异常,硬件系统异常,网络状态改变异常等运行态中可能出现的...当对数组的索引值为负数或...
  • JAVA---数组

    2019-03-25 14:53:00
    1.数组的概述与特征 数组的概述  •数组是Java语言中常见的一种引用数据类型,它是具有相同数据... 数组的下标也称为数组的索引,是从0开始,且负数索引是无效的。 数组的特征  •数组是由若干...
  • java.lang.ArithmeticException:算术条件...当对数组的索引值为负数或大于等于数组大小时抛出。java.lang.ArrayStoreException:数组存储异常。当向数组中存放非数组声明类型对象时抛出。java.lang.ClassCastExce...

空空如也

空空如也

1 2 3 4 5 ... 13
收藏数 254
精华内容 101
关键字:

java负数索引

java 订阅