草庐IT

long-integer

全部标签

java - 如何在 java 中将内容长度设置为 http header 中的 long 值?

我正在用Java编写一个Web服务器,它可以正常传输高达2GB的文件。当我查找原因时,我发现像javaHttpServelet只允许我们将内容长度设置为int。由于整数的最大大小为2GB,因此当我使用response.setContentLength方法时,它可以正常工作高达2GB。现在的问题是默认response.setContentLength有整数参数。所以它没有将long值作为参数。我已经试过了response.setHeader("Content-Length",Long.toString(f.length()));response.addHeader("Content-Le

java - Generics Oddity - 我可以将一个 Long 值插入到 Map<String, String> 中,它会编译并且不会在运行时失败

输入以下代码:publicstaticvoidmain(String[]args){HashMaphashMap=newHashMap();HashMapdataMap=newHashMap();dataMap.put("longvalue",5L);classTestMethodHolder{TgetValue(MapdataMap,Stringvalue){return(T)dataMap.get(value);}}hashMap.put("test",newTestMethodHolder().getValue(dataMap,"longvalue"));Stringvalue=

java - 如何检查 List<Long> 是否包含一个值?

我有listListlist,其中包含:[160774,7212775]和Longid=7212775.我需要检查列表是否包含值为id的元素.怎么做?遗憾list.contains(id)返回false就我而言。我就是这样使用它的:@RequestMapping("/case/{id}")publicStringopenCase(@PathVariable("id")Longid){log.debug(caseDAO.findAllCasesId());//[160774,7212775]log.debug(id);//7212775if(caseDAO.findAllCasesId(

java - 为什么 ArrayList 的最大数组大小是 Integer.MAX_VALUE - 8?

我正在研究ArrayList的Java8文档。我知道最大数组大小定义为Integer.MAX_VALUE-8表示2^31–8=2147483639。然后重点说了为什么要减8或者为什么不能小于8或者大于8要减?/***Themaximumsizeofarraytoallocate.*SomeVMsreservesomeheaderwordsinanarray.*Attemptstoallocatelargerarraysmayresultin*OutOfMemoryError:RequestedarraysizeexceedsVMlimit*/privatestaticfinalintM

java - Java 中的 (Integer)y 和 new Integer(y) 有什么区别?

以下有什么区别:Integerin=(Integer)y;和Integerin=newInteger(y);我想将int类型转换为Integer类型,反之亦然。这是我的代码:publicclassCompareToDemo{publicstaticvoidmain(String[]args){//Integerx=5;inty=25;System.out.println(y+"thisisintvariable");Integerin=(Integer)y;//Integerin=newInteger(y);if(ininstanceofInteger){System.out.prin

java - 在 Java 中对 long 进行位移

我相信这对第一个看到它的人来说很简单!为什么Java中的代码是这样的longone=1打印1=11073741824=1000000000000000000000000000000-2147483648=11111111111111111111111111111111100000000000000000000000000000001=1这对我来说没有意义。long是一个64位数字-而它在上面看起来像一个int。我知道移位的byte会进行int提升,但我看不到这种情况下发生了什么。任何关于这里发生的事情的指示都会很好:)谢谢编辑:感谢所有的回答-我一点击“提交”就意识到发生了什么,但是进

java - 长期分配

我一直在尝试这种int和long转换,我尝试将int变量分配给long变量。代码如下:publicstaticvoidmain(String[]args){inti=1024;longj=i;longk=i*i*i*i;System.out.println("j="+j+",k="+k);}因此,在打印j时,它只是给出了1024的输出。但是在打印k时,它显示溢出(k=0)。我通过使用这种技术解决了这个问题,我已经明确地将每个i转换为long。即publicstaticvoidmain(String[]args){inti=1024;longj=i;longk=((long)i)*((l

java - long/int 除法中的意外结果

我有这样的值(value)观:longmillis=11400000;intconsta=86400000;doubleres=millis/consta;问题是:为什么res等于0.0(而不是大约0.131944)?它存储在double中,所以不应该四舍五入吗? 最佳答案 当您使用二元运算符时,两个参数应该是同一类型并且结果也将是它们的类型。当你想划分(int)/(long)它变成了(long)/(long)结果是(long).你应该做到(double)/(long)或(int)/(double)得到双重结果。由于double大于

java - JPA : Store a list of integers in a single field

是否可以使用标准JPA2将整数列表存储在相应实体表的单个字段中?@Entity@Table(name="tbl_myentities")publicclassMyEntity{@ElementaryCollection@Column(name="vals")//intabletbl_myentitiesprivateListvals; 最佳答案 不可能在单个字段中存储多个值。将它们存储在一个字段中的原因是什么?一种方法是使用字符串类型的字段并将所有整数添加到逗号分隔列表中,然后在getter和setter中加入/分解:private

java - 由于 "input line is too long",在 Windows 上运行 .bat 文件时出现问题

我正在使用Windows并有一个批处理文件(下面附有内容),我在尝试运行Java类之前在其中构建类路径。不幸的是,类路径相当大,文件最终约为14kb。当我运行它时,出现“输入行太长”错误。我在别处读到,最大。环境变量的大小为8kb,但我似乎不太可能减小类路径的大小以适应它。我还能做些什么来让它运行吗?谢谢,尼克echooffsubstz:C:\Users\ned24\.m2\repositorysetCLASSPATH=c:\workspace-eclipse\lensfield-pom\lensfield-build\target\classes;%CLASSPATH%setCLAS