Ghosty
그는 물었다 11년 전
207

Int 의 자바 가상 머신 (jvm) 에 긴 변환하십시오 어떻게 합니까?

난 계속 여기 있는 것 '을 찾는 사람들이 남아, 구글 모두 다른 방식이 아니라' 에서 '긴' int 어려움을 겪고 있다. # 39 m, m not only one, 아직 확실히 I& I& # 39 로 전환하기 전에 "에서 int '을' 이 있는 책정안 실행하십시오 긴 '.

이 밖에 답을 찾을 수 있는데, 이를 &quot I& # 39, 방금 설정한 첫 번째 place&quot 많이 있었다. 정말 doesn& 질문이예요 해결할 수 있는 t # 39.

하지만 나는 내가 처음에 받을 수 없는, 긴 '에서' 캐스팅 캐스팅을 시도한 &quot int &quot.

for (int i = 0; i < myArrayList.size(); ++i ) {
    content = new Content();
    content.setDescription(myArrayList.get(i));
    content.setSequence((Long) i);
    session.save(content);
}

39, 상상할 수 있듯이 I& 조금 당황한 I& # 39 m, m '은 오는 int' 이후 일부 내용을 사용하여 고정된 표시됨과 '과' 이 정보를 저장할 수 있는 # 39 m, 라일리스트 엔티티에는 I& 单捞磐啊 e0100042.log 오래 할 수 있다.

Instantsoup
그는 11년 전 댓글을 달았습니다
0

대한 (긴 i = 0; 내가 &lt. 미리스트리시즈 (); 너무 ++i) 는

Ghosty
그는 11년 전 댓글을 달았습니다
0

그러나 내가 일할 수 있는 @instantsoup 그러하너라 루프, 아래쪽에 있는 # 39 m, 라일리스트 I& 지정되었습니까 내 질문을 다시 작업할 때 어떤 인덱스화할 afaq 포지셔닝하십시오 specifying 单捞磐啊 int

Eric Wang
그는 일 년 전 댓글을 달았습니다
0

내가 한 것입니다. int '을' 긴 '' 긴 '를 먼저 할당할지 캐스트' '긴'. int 에드그 'x = 2. 롱 (long) x, y = '

답변 12 개

단, 캐스트 (cast) '를' 긴 '와 큰 차이가 있을 수 있는 긴'. 캐스트 '긴' (프리미티브 값) 을 해야 할 경우 자동으로 다음 사항박스형 맞추기바인딩 '긴' (참조 유형을 둘러싸여집니다 it).

만드는 데 사용할 수 있습니다 ',' 또는 '새' 를 '가치' 이 긴 인스턴스입니다 초기화중 int.

Grundlefleck
그는 11년 전 댓글을 달았습니다
30

보여주기 위해 어위커 넓힐 수 있는 선생님이 롱스발우에로프 호출하십시오 (i), 오래 걸리는 긴 객체에는 뒤로를 제공하십시오 충족되었으며 int 및 않지만.

Michael Myers
그는 11년 전 댓글을 달았습니다
1

39 doesn& 오토보싱 사용하는 것이 더 좋을 수도 있기 때문에, 반드시 작성해야 할 때마다 새로운 '긴' 객체에는 없다.

Grundlefleck
그는 11년 전 댓글을 달았습니다
2

(경고: 이 고객은 나머지 주석 및 추측)

값이 떨어질 경우 주어진 0-사이의 롱스발우에로프 () 는 128, 이는 매우 일반적인, 정보기술 (it), 되돌려줍니다 캐싱된 인스턴스입니다 오토보싱 통해 더 적합할 하는 것입니다. (난 과민반을을 하나님께용서를 # 39 의 새 질문 그렇게 생각한다면 it& worth it.)

Daniel Earwicker
그는 11년 전 댓글을 달았습니다
4

오토보싱 높여줍니까 것과 같은 것입니다. 그나저나, it& # 39 의 사이 - 127 과 128.

Michael Myers
그는 11년 전 댓글을 달았습니다
5

@Grundlefleck: 오토보싱 롱스발우에로프 () 는 ',' (if I remember 제대로), 따라서 wouldn& # 39 박스트롤의 전혀 차이가 없다. 내 주석문입니다 롬폭 회신과 데이터베이스에구성원을 아닌 오토메이티드 대한 언급은 하지 않았다.

Daniel Earwicker
그는 11년 전 댓글을 달았습니다
0

A = b '를 탑재한 2' 를 보고 아웃해야 실수로 먹어서나 사항박스형 값뿐! # 39 의 경우, re, interning&quot &quot 작동합니까 they& 보일 것이다. , 는 최소 범위 및 maxvalorarray 페일오버됩니다 만약 그렇지 않다면. - 128 의 127 수 있지만, 클 수 있음. (내 생각엔 that& # 39 의 it looks like I 입력되었는지 오른쪽맞춤, 잘못된 방식으로 내 마지막 라운드에서 셀명).

Grundlefleck
그는 11년 전 댓글을 달았습니다
0

@mmyers: 아 그렇군요, 건배해요

@Earwicker: 제가 이렇게 굵은체로 # 39 의 일부 정보는 there& 제시할 수 있는 설명을 할 수 있도록 다른 대답을 버는만큼을 최소 1 명이 포함된? -)

Daniel Earwicker
그는 11년 전 댓글을 달았습니다
0

하지만, 아마도 그 질문에 대한 @grundlefleck - 더욱 감지에서 의심하였더라 오토보싱 이 질문에 해당하는 업보테 수 있습니다. (예: # 767167 http://stackoverflow.com/questions/766468/autoboxing-so-i-can-write-integer-i-0-instead-of-integer-i-new-integer0/767167

아래: ['롱스발우에로프 (int),'] [1].

[1]: http://docs.oracle.com/javase/7/docs/api/java/lang/Long.html # valueOf% 28long% 29

Tim Cooper
serg
그는 11년 전 댓글을 달았습니다
21

Int 롱스발우에로프 사용할 수 있습니다 (long) 가 잘 알려져 있다.

will824
그는 9년 전 댓글을 달았습니다
4

조심해, 이는 누얼포인터렉세페시옹 낼 수 있을 경우 정수 객체에는 받고 있는 널임.

shareef
그는 6년 전 댓글을 달았습니다
2

만약 내가 살 수 있는 정확한 답이 키워봤지 브론 생각해봤죠 베쿠제 롱스발우에로프 방법을 찾을 수 없습니다. ' (int)!!'

Rondo
그는 6년 전 댓글을 달았습니다
4

39, & # 39 int& 프리미티브 @will824 -; 가변으로 널일 수 없습니다.

Rondo
그는 6년 전 댓글을 달았습니다
1

39 의 주석문입니다 serg& @shareef - - 근데 난 이 방법을 생각해 볼 수 있는 긴 자동 박스 경향성 int 로 길다. 그래서 예비형 될 것 같다.

Moira
그는 3년 전 댓글을 달았습니다
1

@Rondo 오버클로킹된 '정수' 가 있는데, 이는 그가 말한대로에요

Rondo
그는 3년 전 댓글을 달았습니다
1

어느 쪽이든, @1blustone 컴포지션이 레드 허링: 그러나 이 경우 그 정수 수신되었습니다 누얼포인터 의해 생성된 호출하십시오 않을 것이라고 할 수 가 내려받습니다 꽂으십시오 필요한 것들이다. 롱 (롱스발우에로프 (int), t # 39 doesn& 있음)

이미 있는 경우 int 입력되었는지 정수로 이 작업을 수행할 수 있습니다.

Integer y = 1;
long x = y.longValue();

&lt 사용하여 br>;

new Long(your_integer);
또는

Long.valueOf(your_integer);

자바 가상 머신 (jvm) 에 할 수 있습니다.

 int myInt=4;
 Long myLong= new Long(myInt);

이 경우에는 다음과 같이 쓸 수 있다.

content.setSequence(new Long(i));

나는 이 작은 장난감, 함께 제공하는 계약을 비사양 일반 인터페이스입니다.

39 m OK, it 와 i& 던져 클라스카스티스세페시옹 급지가 잘못된 경우 (OK 행복한)

public class TypeUtil {
    public static long castToLong(Object o) {
        Number n = (Number) o;
        return n.longValue();
    }
}

어떤가.

int myInt = 88;

// 컴파일하십시오 않습니다.

Long myLong = myInt;

Int 는 컴파일 및 // 캐스트 (cast) 는 전혀 없는 최고의 null 이 아닌 물으리라. . 물론 너회의 览侩 荤례 길고 가능한 NULL 값을 할 수 있습니다. Int 는 입력 및 걷고, 또는 기타 신앙이니라 해결할 수 있는 유일한 방법, 난 이 외곽진입 제안하세요 수정할 수 있습니다.

long myLong = myInt;

가장 효율적인 방법으로 하면 소스 컴파일, //, 가치, 그리고 널일 결코 분명히 있다.

Long myLong = (long) myInt;

 1,new Long(intValue);
 2,Long.valueOf(intValue);

We shall 내려받습니다 기절해있는 사용하여 값을 '숫자' 참조입니다.

public static long toLong(Number number){
    return number.longValue();
}

여기에 작동하잖아 모든 숫자 유형 테스트:

public static void testToLong() throws Exception {
    assertEquals(0l, toLong(0));   // an int
    assertEquals(0l, toLong((short)0)); // a short
    assertEquals(0l, toLong(0l)); // a long
    assertEquals(0l, toLong((long) 0)); // another long
    assertEquals(0l, toLong(0.0f));  // a float
    assertEquals(0l, toLong(0.0));  // a double

}

 //Suppose you have int and you wan to convert it to Long
 int i=78;
 //convert to Long
 Long l=Long.valueOf(i)

난 이미 상당한 문제가 있습니다. 싶어서.

thisBill.IntervalCount = jPaidCountSpinner.getValue();

여기서 인터발카운트 길고 긴 반환되기를 설정되었습니다 및 제스파이너 있다. 결국 이 기능을 쓸 수 있었습니다.

    public static final Long getLong(Object obj) throws IllegalArgumentException {
    Long rv;

    if((obj.getClass() == Integer.class) || (obj.getClass() == Long.class) || (obj.getClass() == Double.class)) {
        rv = Long.parseLong(obj.toString());
    }
    else if((obj.getClass() == int.class) || (obj.getClass() == long.class) || (obj.getClass() == double.class)) {
        rv = (Long) obj;
    }
    else if(obj.getClass() == String.class) {
        rv = Long.parseLong(obj.toString());
    }
    else {
        throw new IllegalArgumentException("getLong: type " + obj.getClass() + " = \"" + obj.toString() + "\" unaccounted for");
    }

    return rv;
}
하지만 이렇게 할 것을 우려한 때문으로 보인다. 아무리 간단한 캐스팅, 기타 솔루션 협력했습니다 for me. 답답한 것은 매우.

Daniel Earwicker
그는 9년 전 댓글을 달았습니다
1

' ()' 을 반환하는지 객체에는 제페이드쿤츠피너드제바루이 경우 사실상 ',' a '롱 (Long)' 캐스트 앞에 두고 확실히 사용해야 합니다. 또한 '촉각' 또는 '롱스클레스 린트리클레스 수표에 대한 시도하시겠습니까 정지점을 있다. 판매업체에서 안타쳤어 있습니까? 그리고 만약 당신이 가지고 있는 ',' 도왔으매 캐스트 redhat. 같은 번호 객체에는 지원 합니다 제바스티우스 움베르 롱발루 security. '및' 메서드입니다. 이 경우 문자열으로 통해 검색하기를 필요가 없습니다. 그래서 이 기능을 할 수 있는 아주 조금 간편화된 경우에도 써줬지 대처할 필요가 있다 (이 부분에 대해 '나쁜' 제스파이너 붽뎄 문제를 참조).

Profiterole
그는 2년 전 댓글을 달았습니다
1

나도 이런 일을 됐지. 내가 꼭 이래야겠어요 수 있는지, 어떤 종류의 t # 39 wasn& 기꺼이 받아 적은 있지만 이를 피하기 위해 긴 변환하십시오 염려사항 효율성을 위해 널리 사용되는 것이 좋다.

대로 (long) ',' 롱스발우에로프 방법 밖에 없는 '긴' 에서 '캐스팅 될 경우 int' 를 사용하여 간접적으로 수행됨 '롱스발우에로프 (린트발루)'.

이는 더 선택해제합니다 방법으로

Integer.valueOf(intValue).longValue()

Reinstate Monica - M. Schröde
그는 일 년 전 댓글을 달았습니다
0

그래서 '그냥' (long) ',' 는 롱발루 유일한 정말 &quot gain"; 여기서 & # 39 는 '정수' 의 내부 캐시.