Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
dragonwell8_jdk
提交
8b0903a8
D
dragonwell8_jdk
项目概览
openanolis
/
dragonwell8_jdk
通知
4
Star
2
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
dragonwell8_jdk
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
8b0903a8
编写于
9月 12, 2012
作者:
M
mullan
浏览文件
操作
浏览文件
下载
差异文件
Merge
上级
51ced87f
b2c32782
变更
20
显示空白变更内容
内联
并排
Showing
20 changed file
with
73 addition
and
54 deletion
+73
-54
src/share/classes/com/sun/java/util/jar/pack/PackageWriter.java
...are/classes/com/sun/java/util/jar/pack/PackageWriter.java
+1
-1
src/share/classes/com/sun/management/VMOption.java
src/share/classes/com/sun/management/VMOption.java
+1
-1
src/share/classes/java/io/FilePermission.java
src/share/classes/java/io/FilePermission.java
+8
-10
src/share/classes/java/lang/reflect/Constructor.java
src/share/classes/java/lang/reflect/Constructor.java
+1
-1
src/share/classes/java/lang/reflect/Method.java
src/share/classes/java/lang/reflect/Method.java
+1
-1
src/share/classes/java/net/SocketPermission.java
src/share/classes/java/net/SocketPermission.java
+3
-3
src/share/classes/java/nio/channels/AsynchronousFileChannel.java
...re/classes/java/nio/channels/AsynchronousFileChannel.java
+1
-1
src/share/classes/java/nio/channels/FileChannel.java
src/share/classes/java/nio/channels/FileChannel.java
+1
-1
src/share/classes/java/util/ArrayDeque.java
src/share/classes/java/util/ArrayDeque.java
+6
-2
src/share/classes/java/util/Arrays.java
src/share/classes/java/util/Arrays.java
+4
-3
src/share/classes/java/util/Collections.java
src/share/classes/java/util/Collections.java
+20
-11
src/share/classes/java/util/ComparableTimSort.java
src/share/classes/java/util/ComparableTimSort.java
+4
-4
src/share/classes/java/util/HashMap.java
src/share/classes/java/util/HashMap.java
+3
-3
src/share/classes/java/util/JumboEnumSet.java
src/share/classes/java/util/JumboEnumSet.java
+4
-1
src/share/classes/java/util/PriorityQueue.java
src/share/classes/java/util/PriorityQueue.java
+2
-1
src/share/classes/java/util/PropertyPermission.java
src/share/classes/java/util/PropertyPermission.java
+2
-1
src/share/classes/java/util/PropertyResourceBundle.java
src/share/classes/java/util/PropertyResourceBundle.java
+3
-1
src/share/classes/java/util/jar/JarVerifier.java
src/share/classes/java/util/jar/JarVerifier.java
+2
-1
src/share/classes/java/util/jar/Pack200.java
src/share/classes/java/util/jar/Pack200.java
+4
-4
src/share/classes/sun/util/PreHashedMap.java
src/share/classes/sun/util/PreHashedMap.java
+2
-3
未找到文件。
src/share/classes/com/sun/java/util/jar/pack/PackageWriter.java
浏览文件 @
8b0903a8
...
@@ -883,7 +883,7 @@ class PackageWriter extends BandStructure {
...
@@ -883,7 +883,7 @@ class PackageWriter extends BandStructure {
avHiBits
&=
(
1L
<<
attrIndexLimit
[
i
])-
1
;
avHiBits
&=
(
1L
<<
attrIndexLimit
[
i
])-
1
;
int
nextLoBit
=
0
;
int
nextLoBit
=
0
;
Map
<
Attribute
.
Layout
,
int
[]>
defMap
=
allLayouts
.
get
(
i
);
Map
<
Attribute
.
Layout
,
int
[]>
defMap
=
allLayouts
.
get
(
i
);
@SuppressWarnings
({
"unchecked"
,
"rawtypes"
})
@SuppressWarnings
({
"unchecked"
,
"rawtypes"
})
Map
.
Entry
<
Attribute
.
Layout
,
int
[]>[]
layoutsAndCounts
=
Map
.
Entry
<
Attribute
.
Layout
,
int
[]>[]
layoutsAndCounts
=
new
Map
.
Entry
[
defMap
.
size
()];
new
Map
.
Entry
[
defMap
.
size
()];
defMap
.
entrySet
().
toArray
(
layoutsAndCounts
);
defMap
.
entrySet
().
toArray
(
layoutsAndCounts
);
...
...
src/share/classes/com/sun/management/VMOption.java
浏览文件 @
8b0903a8
...
@@ -178,7 +178,7 @@ public class VMOption {
...
@@ -178,7 +178,7 @@ public class VMOption {
return
"VM option: "
+
getName
()
+
return
"VM option: "
+
getName
()
+
" value: "
+
value
+
" "
+
" value: "
+
value
+
" "
+
" origin: "
+
origin
+
" "
+
" origin: "
+
origin
+
" "
+
(
writeable
?
"(read-
only)"
:
"(read-write
)"
);
(
writeable
?
"(read-
write)"
:
"(read-only
)"
);
}
}
/**
/**
...
...
src/share/classes/java/io/FilePermission.java
浏览文件 @
8b0903a8
/*
/*
* Copyright (c) 1997, 201
1
, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 201
2
, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
*
* This code is free software; you can redistribute it and/or modify it
* This code is free software; you can redistribute it and/or modify it
...
@@ -31,10 +31,6 @@ import java.util.List;
...
@@ -31,10 +31,6 @@ import java.util.List;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.Vector
;
import
java.util.Vector
;
import
java.util.Collections
;
import
java.util.Collections
;
import
java.io.ObjectStreamField
;
import
java.io.ObjectOutputStream
;
import
java.io.ObjectInputStream
;
import
java.io.IOException
;
import
sun.security.util.SecurityConstants
;
import
sun.security.util.SecurityConstants
;
/**
/**
...
@@ -424,7 +420,7 @@ public final class FilePermission extends Permission implements Serializable {
...
@@ -424,7 +420,7 @@ public final class FilePermission extends Permission implements Serializable {
/**
/**
* Converts an actions String to an actions mask.
* Converts an actions String to an actions mask.
*
*
* @param action the action string.
* @param action
s
the action string.
* @return the actions mask.
* @return the actions mask.
*/
*/
private
static
int
getMask
(
String
actions
)
{
private
static
int
getMask
(
String
actions
)
{
...
@@ -435,7 +431,9 @@ public final class FilePermission extends Permission implements Serializable {
...
@@ -435,7 +431,9 @@ public final class FilePermission extends Permission implements Serializable {
if
(
actions
==
null
)
{
if
(
actions
==
null
)
{
return
mask
;
return
mask
;
}
}
// Check against use of constants (used heavily within the JDK)
// Use object identity comparison against known-interned strings for
// performance benefit (these values are used heavily within the JDK).
if
(
actions
==
SecurityConstants
.
FILE_READ_ACTION
)
{
if
(
actions
==
SecurityConstants
.
FILE_READ_ACTION
)
{
return
READ
;
return
READ
;
}
else
if
(
actions
==
SecurityConstants
.
FILE_WRITE_ACTION
)
{
}
else
if
(
actions
==
SecurityConstants
.
FILE_WRITE_ACTION
)
{
...
@@ -531,7 +529,7 @@ public final class FilePermission extends Permission implements Serializable {
...
@@ -531,7 +529,7 @@ public final class FilePermission extends Permission implements Serializable {
switch
(
a
[
i
-
matchlen
])
{
switch
(
a
[
i
-
matchlen
])
{
case
','
:
case
','
:
seencomma
=
true
;
seencomma
=
true
;
/*FALLTHROUGH*/
break
;
case
' '
:
case
'\r'
:
case
'\n'
:
case
' '
:
case
'\r'
:
case
'\n'
:
case
'\f'
:
case
'\t'
:
case
'\f'
:
case
'\t'
:
break
;
break
;
...
@@ -798,7 +796,7 @@ implements Serializable {
...
@@ -798,7 +796,7 @@ implements Serializable {
* @return an enumeration of all the FilePermission objects.
* @return an enumeration of all the FilePermission objects.
*/
*/
public
Enumeration
elements
()
{
public
Enumeration
<
Permission
>
elements
()
{
// Convert Iterator into Enumeration
// Convert Iterator into Enumeration
synchronized
(
this
)
{
synchronized
(
this
)
{
return
Collections
.
enumeration
(
perms
);
return
Collections
.
enumeration
(
perms
);
...
@@ -843,7 +841,6 @@ implements Serializable {
...
@@ -843,7 +841,6 @@ implements Serializable {
/*
/*
* Reads in a Vector of FilePermissions and saves them in the perms field.
* Reads in a Vector of FilePermissions and saves them in the perms field.
*/
*/
@SuppressWarnings
(
"unchecked"
)
private
void
readObject
(
ObjectInputStream
in
)
throws
IOException
,
private
void
readObject
(
ObjectInputStream
in
)
throws
IOException
,
ClassNotFoundException
{
ClassNotFoundException
{
// Don't call defaultReadObject()
// Don't call defaultReadObject()
...
@@ -852,6 +849,7 @@ implements Serializable {
...
@@ -852,6 +849,7 @@ implements Serializable {
ObjectInputStream
.
GetField
gfields
=
in
.
readFields
();
ObjectInputStream
.
GetField
gfields
=
in
.
readFields
();
// Get the one we want
// Get the one we want
@SuppressWarnings
(
"unchecked"
)
Vector
<
Permission
>
permissions
=
(
Vector
<
Permission
>)
gfields
.
get
(
"permissions"
,
null
);
Vector
<
Permission
>
permissions
=
(
Vector
<
Permission
>)
gfields
.
get
(
"permissions"
,
null
);
perms
=
new
ArrayList
<>(
permissions
.
size
());
perms
=
new
ArrayList
<>(
permissions
.
size
());
perms
.
addAll
(
permissions
);
perms
.
addAll
(
permissions
);
...
...
src/share/classes/java/lang/reflect/Constructor.java
浏览文件 @
8b0903a8
...
@@ -182,7 +182,7 @@ public final class Constructor<T> extends Executable {
...
@@ -182,7 +182,7 @@ public final class Constructor<T> extends Executable {
* @since 1.5
* @since 1.5
*/
*/
@Override
@Override
@SuppressWarnings
({
"rawtypes"
,
"unchecked"
})
@SuppressWarnings
({
"rawtypes"
,
"unchecked"
})
public
TypeVariable
<
Constructor
<
T
>>[]
getTypeParameters
()
{
public
TypeVariable
<
Constructor
<
T
>>[]
getTypeParameters
()
{
if
(
getSignature
()
!=
null
)
{
if
(
getSignature
()
!=
null
)
{
return
(
TypeVariable
<
Constructor
<
T
>>[])
getGenericInfo
().
getTypeParameters
();
return
(
TypeVariable
<
Constructor
<
T
>>[])
getGenericInfo
().
getTypeParameters
();
...
...
src/share/classes/java/lang/reflect/Method.java
浏览文件 @
8b0903a8
...
@@ -194,7 +194,7 @@ public final class Method extends Executable {
...
@@ -194,7 +194,7 @@ public final class Method extends Executable {
* @since 1.5
* @since 1.5
*/
*/
@Override
@Override
@SuppressWarnings
({
"rawtypes"
,
"unchecked"
})
@SuppressWarnings
({
"rawtypes"
,
"unchecked"
})
public
TypeVariable
<
Method
>[]
getTypeParameters
()
{
public
TypeVariable
<
Method
>[]
getTypeParameters
()
{
if
(
getGenericSignature
()
!=
null
)
if
(
getGenericSignature
()
!=
null
)
return
(
TypeVariable
<
Method
>[])
getGenericInfo
().
getTypeParameters
();
return
(
TypeVariable
<
Method
>[])
getGenericInfo
().
getTypeParameters
();
...
...
src/share/classes/java/net/SocketPermission.java
浏览文件 @
8b0903a8
...
@@ -467,7 +467,6 @@ implements java.io.Serializable
...
@@ -467,7 +467,6 @@ implements java.io.Serializable
* @param action the action string
* @param action the action string
* @return the action mask
* @return the action mask
*/
*/
@SuppressWarnings
(
"fallthrough"
)
private
static
int
getMask
(
String
action
)
{
private
static
int
getMask
(
String
action
)
{
if
(
action
==
null
)
{
if
(
action
==
null
)
{
...
@@ -480,7 +479,8 @@ implements java.io.Serializable
...
@@ -480,7 +479,8 @@ implements java.io.Serializable
int
mask
=
NONE
;
int
mask
=
NONE
;
// Check against use of constants (used heavily within the JDK)
// Use object identity comparison against known-interned strings for
// performance benefit (these values are used heavily within the JDK).
if
(
action
==
SecurityConstants
.
SOCKET_RESOLVE_ACTION
)
{
if
(
action
==
SecurityConstants
.
SOCKET_RESOLVE_ACTION
)
{
return
RESOLVE
;
return
RESOLVE
;
}
else
if
(
action
==
SecurityConstants
.
SOCKET_CONNECT_ACTION
)
{
}
else
if
(
action
==
SecurityConstants
.
SOCKET_CONNECT_ACTION
)
{
...
@@ -568,7 +568,7 @@ implements java.io.Serializable
...
@@ -568,7 +568,7 @@ implements java.io.Serializable
switch
(
a
[
i
-
matchlen
])
{
switch
(
a
[
i
-
matchlen
])
{
case
','
:
case
','
:
seencomma
=
true
;
seencomma
=
true
;
/*FALLTHROUGH*/
break
;
case
' '
:
case
'\r'
:
case
'\n'
:
case
' '
:
case
'\r'
:
case
'\n'
:
case
'\f'
:
case
'\t'
:
case
'\f'
:
case
'\t'
:
break
;
break
;
...
...
src/share/classes/java/nio/channels/AsynchronousFileChannel.java
浏览文件 @
8b0903a8
...
@@ -248,7 +248,7 @@ public abstract class AsynchronousFileChannel
...
@@ -248,7 +248,7 @@ public abstract class AsynchronousFileChannel
return
provider
.
newAsynchronousFileChannel
(
file
,
options
,
executor
,
attrs
);
return
provider
.
newAsynchronousFileChannel
(
file
,
options
,
executor
,
attrs
);
}
}
@SuppressWarnings
({
"unchecked"
,
"rawtypes"
})
// generic array construction
@SuppressWarnings
({
"unchecked"
,
"rawtypes"
})
// generic array construction
private
static
final
FileAttribute
<?>[]
NO_ATTRIBUTES
=
new
FileAttribute
[
0
];
private
static
final
FileAttribute
<?>[]
NO_ATTRIBUTES
=
new
FileAttribute
[
0
];
/**
/**
...
...
src/share/classes/java/nio/channels/FileChannel.java
浏览文件 @
8b0903a8
...
@@ -287,7 +287,7 @@ public abstract class FileChannel
...
@@ -287,7 +287,7 @@ public abstract class FileChannel
return
provider
.
newFileChannel
(
path
,
options
,
attrs
);
return
provider
.
newFileChannel
(
path
,
options
,
attrs
);
}
}
@SuppressWarnings
({
"unchecked"
,
"rawtypes"
})
// generic array construction
@SuppressWarnings
({
"unchecked"
,
"rawtypes"
})
// generic array construction
private
static
final
FileAttribute
<?>[]
NO_ATTRIBUTES
=
new
FileAttribute
[
0
];
private
static
final
FileAttribute
<?>[]
NO_ATTRIBUTES
=
new
FileAttribute
[
0
];
/**
/**
...
...
src/share/classes/java/util/ArrayDeque.java
浏览文件 @
8b0903a8
...
@@ -121,6 +121,7 @@ public class ArrayDeque<E> extends AbstractCollection<E>
...
@@ -121,6 +121,7 @@ public class ArrayDeque<E> extends AbstractCollection<E>
*
*
* @param numElements the number of elements to hold
* @param numElements the number of elements to hold
*/
*/
@SuppressWarnings
(
"unchecked"
)
private
void
allocateElements
(
int
numElements
)
{
private
void
allocateElements
(
int
numElements
)
{
int
initialCapacity
=
MIN_INITIAL_CAPACITY
;
int
initialCapacity
=
MIN_INITIAL_CAPACITY
;
// Find the best power of two to hold elements.
// Find the best power of two to hold elements.
...
@@ -152,10 +153,11 @@ public class ArrayDeque<E> extends AbstractCollection<E>
...
@@ -152,10 +153,11 @@ public class ArrayDeque<E> extends AbstractCollection<E>
int
newCapacity
=
n
<<
1
;
int
newCapacity
=
n
<<
1
;
if
(
newCapacity
<
0
)
if
(
newCapacity
<
0
)
throw
new
IllegalStateException
(
"Sorry, deque too big"
);
throw
new
IllegalStateException
(
"Sorry, deque too big"
);
Object
[]
a
=
new
Object
[
newCapacity
];
@SuppressWarnings
(
"unchecked"
)
E
[]
a
=
(
E
[])
new
Object
[
newCapacity
];
System
.
arraycopy
(
elements
,
p
,
a
,
0
,
r
);
System
.
arraycopy
(
elements
,
p
,
a
,
0
,
r
);
System
.
arraycopy
(
elements
,
0
,
a
,
r
,
p
);
System
.
arraycopy
(
elements
,
0
,
a
,
r
,
p
);
elements
=
(
E
[])
a
;
elements
=
a
;
head
=
0
;
head
=
0
;
tail
=
n
;
tail
=
n
;
}
}
...
@@ -182,6 +184,7 @@ public class ArrayDeque<E> extends AbstractCollection<E>
...
@@ -182,6 +184,7 @@ public class ArrayDeque<E> extends AbstractCollection<E>
* Constructs an empty array deque with an initial capacity
* Constructs an empty array deque with an initial capacity
* sufficient to hold 16 elements.
* sufficient to hold 16 elements.
*/
*/
@SuppressWarnings
(
"unchecked"
)
public
ArrayDeque
()
{
public
ArrayDeque
()
{
elements
=
(
E
[])
new
Object
[
16
];
elements
=
(
E
[])
new
Object
[
16
];
}
}
...
@@ -793,6 +796,7 @@ public class ArrayDeque<E> extends AbstractCollection<E>
...
@@ -793,6 +796,7 @@ public class ArrayDeque<E> extends AbstractCollection<E>
* this deque
* this deque
* @throws NullPointerException if the specified array is null
* @throws NullPointerException if the specified array is null
*/
*/
@SuppressWarnings
(
"unchecked"
)
public
<
T
>
T
[]
toArray
(
T
[]
a
)
{
public
<
T
>
T
[]
toArray
(
T
[]
a
)
{
int
size
=
size
();
int
size
=
size
();
if
(
a
.
length
<
size
)
if
(
a
.
length
<
size
)
...
...
src/share/classes/java/util/Arrays.java
浏览文件 @
8b0903a8
/*
/*
* Copyright (c) 1997, 201
1
, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 201
2
, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
*
* This code is free software; you can redistribute it and/or modify it
* This code is free software; you can redistribute it and/or modify it
...
@@ -560,7 +560,7 @@ public class Arrays {
...
@@ -560,7 +560,7 @@ public class Arrays {
* off is the offset to generate corresponding low, high in src
* off is the offset to generate corresponding low, high in src
* To be removed in a future release.
* To be removed in a future release.
*/
*/
@SuppressWarnings
({
"unchecked"
,
"rawtypes"
})
@SuppressWarnings
({
"unchecked"
,
"rawtypes"
})
private
static
void
mergeSort
(
Object
[]
src
,
private
static
void
mergeSort
(
Object
[]
src
,
Object
[]
dest
,
Object
[]
dest
,
int
low
,
int
low
,
...
@@ -747,7 +747,7 @@ public class Arrays {
...
@@ -747,7 +747,7 @@ public class Arrays {
* off is the offset into src corresponding to low in dest
* off is the offset into src corresponding to low in dest
* To be removed in a future release.
* To be removed in a future release.
*/
*/
@SuppressWarnings
({
"rawtypes"
,
"unchecked"
})
@SuppressWarnings
({
"rawtypes"
,
"unchecked"
})
private
static
void
mergeSort
(
Object
[]
src
,
private
static
void
mergeSort
(
Object
[]
src
,
Object
[]
dest
,
Object
[]
dest
,
int
low
,
int
high
,
int
off
,
int
low
,
int
high
,
int
off
,
...
@@ -2832,6 +2832,7 @@ public class Arrays {
...
@@ -2832,6 +2832,7 @@ public class Arrays {
* @return a list view of the specified array
* @return a list view of the specified array
*/
*/
@SafeVarargs
@SafeVarargs
@SuppressWarnings
(
"varargs"
)
public
static
<
T
>
List
<
T
>
asList
(
T
...
a
)
{
public
static
<
T
>
List
<
T
>
asList
(
T
...
a
)
{
return
new
ArrayList
<>(
a
);
return
new
ArrayList
<>(
a
);
}
}
...
...
src/share/classes/java/util/Collections.java
浏览文件 @
8b0903a8
...
@@ -213,7 +213,7 @@ public class Collections {
...
@@ -213,7 +213,7 @@ public class Collections {
* @throws IllegalArgumentException (optional) if the comparator is
* @throws IllegalArgumentException (optional) if the comparator is
* found to violate the {@link Comparator} contract
* found to violate the {@link Comparator} contract
*/
*/
@SuppressWarnings
({
"unchecked"
,
"rawtypes"
})
@SuppressWarnings
({
"unchecked"
,
"rawtypes"
})
public
static
<
T
>
void
sort
(
List
<
T
>
list
,
Comparator
<?
super
T
>
c
)
{
public
static
<
T
>
void
sort
(
List
<
T
>
list
,
Comparator
<?
super
T
>
c
)
{
Object
[]
a
=
list
.
toArray
();
Object
[]
a
=
list
.
toArray
();
Arrays
.
sort
(
a
,
(
Comparator
)
c
);
Arrays
.
sort
(
a
,
(
Comparator
)
c
);
...
@@ -418,7 +418,7 @@ public class Collections {
...
@@ -418,7 +418,7 @@ public class Collections {
* @throws UnsupportedOperationException if the specified list or
* @throws UnsupportedOperationException if the specified list or
* its list-iterator does not support the <tt>set</tt> operation.
* its list-iterator does not support the <tt>set</tt> operation.
*/
*/
@SuppressWarnings
({
"rawtypes"
,
"unchecked"
})
@SuppressWarnings
({
"rawtypes"
,
"unchecked"
})
public
static
void
reverse
(
List
<?>
list
)
{
public
static
void
reverse
(
List
<?>
list
)
{
int
size
=
list
.
size
();
int
size
=
list
.
size
();
if
(
size
<
REVERSE_THRESHOLD
||
list
instanceof
RandomAccess
)
{
if
(
size
<
REVERSE_THRESHOLD
||
list
instanceof
RandomAccess
)
{
...
@@ -497,7 +497,7 @@ public class Collections {
...
@@ -497,7 +497,7 @@ public class Collections {
* @throws UnsupportedOperationException if the specified list or its
* @throws UnsupportedOperationException if the specified list or its
* list-iterator does not support the <tt>set</tt> operation.
* list-iterator does not support the <tt>set</tt> operation.
*/
*/
@SuppressWarnings
({
"rawtypes"
,
"unchecked"
})
@SuppressWarnings
({
"rawtypes"
,
"unchecked"
})
public
static
void
shuffle
(
List
<?>
list
,
Random
rnd
)
{
public
static
void
shuffle
(
List
<?>
list
,
Random
rnd
)
{
int
size
=
list
.
size
();
int
size
=
list
.
size
();
if
(
size
<
SHUFFLE_THRESHOLD
||
list
instanceof
RandomAccess
)
{
if
(
size
<
SHUFFLE_THRESHOLD
||
list
instanceof
RandomAccess
)
{
...
@@ -535,7 +535,7 @@ public class Collections {
...
@@ -535,7 +535,7 @@ public class Collections {
* || j < 0 || j >= list.size()).
* || j < 0 || j >= list.size()).
* @since 1.4
* @since 1.4
*/
*/
@SuppressWarnings
({
"rawtypes"
,
"unchecked"
})
@SuppressWarnings
({
"rawtypes"
,
"unchecked"
})
public
static
void
swap
(
List
<?>
list
,
int
i
,
int
j
)
{
public
static
void
swap
(
List
<?>
list
,
int
i
,
int
j
)
{
// instead of using a raw type here, it's possible to capture
// instead of using a raw type here, it's possible to capture
// the wildcard but it will require a call to a supplementary
// the wildcard but it will require a call to a supplementary
...
@@ -669,7 +669,7 @@ public class Collections {
...
@@ -669,7 +669,7 @@ public class Collections {
* @throws NoSuchElementException if the collection is empty.
* @throws NoSuchElementException if the collection is empty.
* @see Comparable
* @see Comparable
*/
*/
@SuppressWarnings
({
"unchecked"
,
"rawtypes"
})
@SuppressWarnings
({
"unchecked"
,
"rawtypes"
})
public
static
<
T
>
T
min
(
Collection
<?
extends
T
>
coll
,
Comparator
<?
super
T
>
comp
)
{
public
static
<
T
>
T
min
(
Collection
<?
extends
T
>
coll
,
Comparator
<?
super
T
>
comp
)
{
if
(
comp
==
null
)
if
(
comp
==
null
)
return
(
T
)
min
((
Collection
)
coll
);
return
(
T
)
min
((
Collection
)
coll
);
...
@@ -740,7 +740,7 @@ public class Collections {
...
@@ -740,7 +740,7 @@ public class Collections {
* @throws NoSuchElementException if the collection is empty.
* @throws NoSuchElementException if the collection is empty.
* @see Comparable
* @see Comparable
*/
*/
@SuppressWarnings
({
"unchecked"
,
"rawtypes"
})
@SuppressWarnings
({
"unchecked"
,
"rawtypes"
})
public
static
<
T
>
T
max
(
Collection
<?
extends
T
>
coll
,
Comparator
<?
super
T
>
comp
)
{
public
static
<
T
>
T
max
(
Collection
<?
extends
T
>
coll
,
Comparator
<?
super
T
>
comp
)
{
if
(
comp
==
null
)
if
(
comp
==
null
)
return
(
T
)
max
((
Collection
)
coll
);
return
(
T
)
max
((
Collection
)
coll
);
...
@@ -1403,7 +1403,7 @@ public class Collections {
...
@@ -1403,7 +1403,7 @@ public class Collections {
extends
UnmodifiableSet
<
Map
.
Entry
<
K
,
V
>>
{
extends
UnmodifiableSet
<
Map
.
Entry
<
K
,
V
>>
{
private
static
final
long
serialVersionUID
=
7854390611657943733L
;
private
static
final
long
serialVersionUID
=
7854390611657943733L
;
@SuppressWarnings
({
"unchecked"
,
"rawtypes"
})
@SuppressWarnings
({
"unchecked"
,
"rawtypes"
})
UnmodifiableEntrySet
(
Set
<?
extends
Map
.
Entry
<?
extends
K
,
?
extends
V
>>
s
)
{
UnmodifiableEntrySet
(
Set
<?
extends
Map
.
Entry
<?
extends
K
,
?
extends
V
>>
s
)
{
// Need to cast to raw in order to work around a limitation in the type system
// Need to cast to raw in order to work around a limitation in the type system
super
((
Set
)
s
);
super
((
Set
)
s
);
...
@@ -3172,7 +3172,7 @@ public class Collections {
...
@@ -3172,7 +3172,7 @@ public class Collections {
*
*
* @see #emptySet()
* @see #emptySet()
*/
*/
@SuppressWarnings
(
"
unchecked
"
)
@SuppressWarnings
(
"
rawtypes
"
)
public
static
final
Set
EMPTY_SET
=
new
EmptySet
<>();
public
static
final
Set
EMPTY_SET
=
new
EmptySet
<>();
/**
/**
...
@@ -3271,10 +3271,13 @@ public class Collections {
...
@@ -3271,10 +3271,13 @@ public class Collections {
return
new
EmptySortedSet
<>();
return
new
EmptySortedSet
<>();
}
}
public
Comparator
comparator
()
{
@Override
public
Comparator
<?
super
E
>
comparator
()
{
return
null
;
return
null
;
}
}
@Override
@SuppressWarnings
(
"unchecked"
)
public
SortedSet
<
E
>
subSet
(
Object
fromElement
,
Object
toElement
)
{
public
SortedSet
<
E
>
subSet
(
Object
fromElement
,
Object
toElement
)
{
Objects
.
requireNonNull
(
fromElement
);
Objects
.
requireNonNull
(
fromElement
);
Objects
.
requireNonNull
(
toElement
);
Objects
.
requireNonNull
(
toElement
);
...
@@ -3294,6 +3297,7 @@ public class Collections {
...
@@ -3294,6 +3297,7 @@ public class Collections {
return
emptySortedSet
();
return
emptySortedSet
();
}
}
@Override
public
SortedSet
<
E
>
headSet
(
Object
toElement
)
{
public
SortedSet
<
E
>
headSet
(
Object
toElement
)
{
Objects
.
requireNonNull
(
toElement
);
Objects
.
requireNonNull
(
toElement
);
...
@@ -3304,6 +3308,7 @@ public class Collections {
...
@@ -3304,6 +3308,7 @@ public class Collections {
return
emptySortedSet
();
return
emptySortedSet
();
}
}
@Override
public
SortedSet
<
E
>
tailSet
(
Object
fromElement
)
{
public
SortedSet
<
E
>
tailSet
(
Object
fromElement
)
{
Objects
.
requireNonNull
(
fromElement
);
Objects
.
requireNonNull
(
fromElement
);
...
@@ -3314,10 +3319,12 @@ public class Collections {
...
@@ -3314,10 +3319,12 @@ public class Collections {
return
emptySortedSet
();
return
emptySortedSet
();
}
}
@Override
public
E
first
()
{
public
E
first
()
{
throw
new
NoSuchElementException
();
throw
new
NoSuchElementException
();
}
}
@Override
public
E
last
()
{
public
E
last
()
{
throw
new
NoSuchElementException
();
throw
new
NoSuchElementException
();
}
}
...
@@ -3328,7 +3335,7 @@ public class Collections {
...
@@ -3328,7 +3335,7 @@ public class Collections {
*
*
* @see #emptyList()
* @see #emptyList()
*/
*/
@SuppressWarnings
(
"
unchecked
"
)
@SuppressWarnings
(
"
rawtypes
"
)
public
static
final
List
EMPTY_LIST
=
new
EmptyList
<>();
public
static
final
List
EMPTY_LIST
=
new
EmptyList
<>();
/**
/**
...
@@ -3402,7 +3409,7 @@ public class Collections {
...
@@ -3402,7 +3409,7 @@ public class Collections {
* @see #emptyMap()
* @see #emptyMap()
* @since 1.3
* @since 1.3
*/
*/
@SuppressWarnings
(
"
unchecked
"
)
@SuppressWarnings
(
"
rawtypes
"
)
public
static
final
Map
EMPTY_MAP
=
new
EmptyMap
<>();
public
static
final
Map
EMPTY_MAP
=
new
EmptyMap
<>();
/**
/**
...
@@ -3685,6 +3692,7 @@ public class Collections {
...
@@ -3685,6 +3692,7 @@ public class Collections {
return
a
;
return
a
;
}
}
@SuppressWarnings
(
"unchecked"
)
public
<
T
>
T
[]
toArray
(
T
[]
a
)
{
public
<
T
>
T
[]
toArray
(
T
[]
a
)
{
final
int
n
=
this
.
n
;
final
int
n
=
this
.
n
;
if
(
a
.
length
<
n
)
{
if
(
a
.
length
<
n
)
{
...
@@ -3731,6 +3739,7 @@ public class Collections {
...
@@ -3731,6 +3739,7 @@ public class Collections {
* the <tt>Comparable</tt> interface.
* the <tt>Comparable</tt> interface.
* @see Comparable
* @see Comparable
*/
*/
@SuppressWarnings
(
"unchecked"
)
public
static
<
T
>
Comparator
<
T
>
reverseOrder
()
{
public
static
<
T
>
Comparator
<
T
>
reverseOrder
()
{
return
(
Comparator
<
T
>)
ReverseComparator
.
REVERSE_ORDER
;
return
(
Comparator
<
T
>)
ReverseComparator
.
REVERSE_ORDER
;
}
}
...
...
src/share/classes/java/util/ComparableTimSort.java
浏览文件 @
8b0903a8
...
@@ -208,7 +208,7 @@ class ComparableTimSort {
...
@@ -208,7 +208,7 @@ class ComparableTimSort {
* @param start the index of the first element in the range that is
* @param start the index of the first element in the range that is
* not already known to be sorted ({@code lo <= start <= hi})
* not already known to be sorted ({@code lo <= start <= hi})
*/
*/
@SuppressWarnings
({
"fallthrough"
,
"rawtypes"
,
"unchecked"
})
@SuppressWarnings
({
"fallthrough"
,
"rawtypes"
,
"unchecked"
})
private
static
void
binarySort
(
Object
[]
a
,
int
lo
,
int
hi
,
int
start
)
{
private
static
void
binarySort
(
Object
[]
a
,
int
lo
,
int
hi
,
int
start
)
{
assert
lo
<=
start
&&
start
<=
hi
;
assert
lo
<=
start
&&
start
<=
hi
;
if
(
start
==
lo
)
if
(
start
==
lo
)
...
@@ -277,7 +277,7 @@ class ComparableTimSort {
...
@@ -277,7 +277,7 @@ class ComparableTimSort {
* @return the length of the run beginning at the specified position in
* @return the length of the run beginning at the specified position in
* the specified array
* the specified array
*/
*/
@SuppressWarnings
({
"unchecked"
,
"rawtypes"
})
@SuppressWarnings
({
"unchecked"
,
"rawtypes"
})
private
static
int
countRunAndMakeAscending
(
Object
[]
a
,
int
lo
,
int
hi
)
{
private
static
int
countRunAndMakeAscending
(
Object
[]
a
,
int
lo
,
int
hi
)
{
assert
lo
<
hi
;
assert
lo
<
hi
;
int
runHi
=
lo
+
1
;
int
runHi
=
lo
+
1
;
...
@@ -612,7 +612,7 @@ class ComparableTimSort {
...
@@ -612,7 +612,7 @@ class ComparableTimSort {
* (must be aBase + aLen)
* (must be aBase + aLen)
* @param len2 length of second run to be merged (must be > 0)
* @param len2 length of second run to be merged (must be > 0)
*/
*/
@SuppressWarnings
({
"unchecked"
,
"rawtypes"
})
@SuppressWarnings
({
"unchecked"
,
"rawtypes"
})
private
void
mergeLo
(
int
base1
,
int
len1
,
int
base2
,
int
len2
)
{
private
void
mergeLo
(
int
base1
,
int
len1
,
int
base2
,
int
len2
)
{
assert
len1
>
0
&&
len2
>
0
&&
base1
+
len1
==
base2
;
assert
len1
>
0
&&
len2
>
0
&&
base1
+
len1
==
base2
;
...
@@ -729,7 +729,7 @@ class ComparableTimSort {
...
@@ -729,7 +729,7 @@ class ComparableTimSort {
* (must be aBase + aLen)
* (must be aBase + aLen)
* @param len2 length of second run to be merged (must be > 0)
* @param len2 length of second run to be merged (must be > 0)
*/
*/
@SuppressWarnings
({
"unchecked"
,
"rawtypes"
})
@SuppressWarnings
({
"unchecked"
,
"rawtypes"
})
private
void
mergeHi
(
int
base1
,
int
len1
,
int
base2
,
int
len2
)
{
private
void
mergeHi
(
int
base1
,
int
len1
,
int
base2
,
int
len2
)
{
assert
len1
>
0
&&
len2
>
0
&&
base1
+
len1
==
base2
;
assert
len1
>
0
&&
len2
>
0
&&
base1
+
len1
==
base2
;
...
...
src/share/classes/java/util/HashMap.java
浏览文件 @
8b0903a8
/*
/*
* Copyright (c) 1997, 201
0
, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 201
2
, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
*
* This code is free software; you can redistribute it and/or modify it
* This code is free software; you can redistribute it and/or modify it
...
@@ -230,7 +230,7 @@ public class HashMap<K,V>
...
@@ -230,7 +230,7 @@ public class HashMap<K,V>
this
.
loadFactor
=
loadFactor
;
this
.
loadFactor
=
loadFactor
;
threshold
=
(
int
)
Math
.
min
(
capacity
*
loadFactor
,
MAXIMUM_CAPACITY
+
1
);
threshold
=
(
int
)
Math
.
min
(
capacity
*
loadFactor
,
MAXIMUM_CAPACITY
+
1
);
table
=
new
Entry
[
capacity
];
table
=
new
Entry
<?,?>
[
capacity
];
init
();
init
();
}
}
...
@@ -1078,7 +1078,7 @@ public class HashMap<K,V>
...
@@ -1078,7 +1078,7 @@ public class HashMap<K,V>
capacity
<<=
1
;
capacity
<<=
1
;
}
}
table
=
new
Entry
[
capacity
];
table
=
new
Entry
<?,?>
[
capacity
];
threshold
=
(
int
)
Math
.
min
(
capacity
*
loadFactor
,
MAXIMUM_CAPACITY
+
1
);
threshold
=
(
int
)
Math
.
min
(
capacity
*
loadFactor
,
MAXIMUM_CAPACITY
+
1
);
init
();
// Give subclass a chance to do its thing.
init
();
// Give subclass a chance to do its thing.
...
...
src/share/classes/java/util/JumboEnumSet.java
浏览文件 @
8b0903a8
/*
/*
* Copyright (c) 2003, 201
1
, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2003, 201
2
, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
*
* This code is free software; you can redistribute it and/or modify it
* This code is free software; you can redistribute it and/or modify it
...
@@ -121,6 +121,7 @@ class JumboEnumSet<E extends Enum<E>> extends EnumSet<E> {
...
@@ -121,6 +121,7 @@ class JumboEnumSet<E extends Enum<E>> extends EnumSet<E> {
unseen
=
elements
[
0
];
unseen
=
elements
[
0
];
}
}
@Override
public
boolean
hasNext
()
{
public
boolean
hasNext
()
{
while
(
unseen
==
0
&&
unseenIndex
<
elements
.
length
-
1
)
while
(
unseen
==
0
&&
unseenIndex
<
elements
.
length
-
1
)
unseen
=
elements
[++
unseenIndex
];
unseen
=
elements
[++
unseenIndex
];
...
@@ -128,6 +129,7 @@ class JumboEnumSet<E extends Enum<E>> extends EnumSet<E> {
...
@@ -128,6 +129,7 @@ class JumboEnumSet<E extends Enum<E>> extends EnumSet<E> {
}
}
@Override
@Override
@SuppressWarnings
(
"unchecked"
)
public
E
next
()
{
public
E
next
()
{
if
(!
hasNext
())
if
(!
hasNext
())
throw
new
NoSuchElementException
();
throw
new
NoSuchElementException
();
...
@@ -138,6 +140,7 @@ class JumboEnumSet<E extends Enum<E>> extends EnumSet<E> {
...
@@ -138,6 +140,7 @@ class JumboEnumSet<E extends Enum<E>> extends EnumSet<E> {
+
Long
.
numberOfTrailingZeros
(
lastReturned
)];
+
Long
.
numberOfTrailingZeros
(
lastReturned
)];
}
}
@Override
public
void
remove
()
{
public
void
remove
()
{
if
(
lastReturned
==
0
)
if
(
lastReturned
==
0
)
throw
new
IllegalStateException
();
throw
new
IllegalStateException
();
...
...
src/share/classes/java/util/PriorityQueue.java
浏览文件 @
8b0903a8
/*
/*
* Copyright (c) 2003, 201
0
, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2003, 201
2
, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
*
* This code is free software; you can redistribute it and/or modify it
* This code is free software; you can redistribute it and/or modify it
...
@@ -330,6 +330,7 @@ public class PriorityQueue<E> extends AbstractQueue<E>
...
@@ -330,6 +330,7 @@ public class PriorityQueue<E> extends AbstractQueue<E>
return
true
;
return
true
;
}
}
@SuppressWarnings
(
"unchecked"
)
public
E
peek
()
{
public
E
peek
()
{
if
(
size
==
0
)
if
(
size
==
0
)
return
null
;
return
null
;
...
...
src/share/classes/java/util/PropertyPermission.java
浏览文件 @
8b0903a8
...
@@ -246,7 +246,8 @@ public final class PropertyPermission extends BasicPermission {
...
@@ -246,7 +246,8 @@ public final class PropertyPermission extends BasicPermission {
return
mask
;
return
mask
;
}
}
// Check against use of constants (used heavily within the JDK)
// Use object identity comparison against known-interned strings for
// performance benefit (these values are used heavily within the JDK).
if
(
actions
==
SecurityConstants
.
PROPERTY_READ_ACTION
)
{
if
(
actions
==
SecurityConstants
.
PROPERTY_READ_ACTION
)
{
return
READ
;
return
READ
;
}
if
(
actions
==
SecurityConstants
.
PROPERTY_WRITE_ACTION
)
{
}
if
(
actions
==
SecurityConstants
.
PROPERTY_WRITE_ACTION
)
{
...
...
src/share/classes/java/util/PropertyResourceBundle.java
浏览文件 @
8b0903a8
/*
/*
* Copyright (c) 1996, 20
06
, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1996, 20
12
, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
*
* This code is free software; you can redistribute it and/or modify it
* This code is free software; you can redistribute it and/or modify it
...
@@ -125,6 +125,7 @@ public class PropertyResourceBundle extends ResourceBundle {
...
@@ -125,6 +125,7 @@ public class PropertyResourceBundle extends ResourceBundle {
* @throws IOException if an I/O error occurs
* @throws IOException if an I/O error occurs
* @throws NullPointerException if <code>stream</code> is null
* @throws NullPointerException if <code>stream</code> is null
*/
*/
@SuppressWarnings
({
"unchecked"
,
"rawtypes"
})
public
PropertyResourceBundle
(
InputStream
stream
)
throws
IOException
{
public
PropertyResourceBundle
(
InputStream
stream
)
throws
IOException
{
Properties
properties
=
new
Properties
();
Properties
properties
=
new
Properties
();
properties
.
load
(
stream
);
properties
.
load
(
stream
);
...
@@ -143,6 +144,7 @@ public class PropertyResourceBundle extends ResourceBundle {
...
@@ -143,6 +144,7 @@ public class PropertyResourceBundle extends ResourceBundle {
* @throws NullPointerException if <code>reader</code> is null
* @throws NullPointerException if <code>reader</code> is null
* @since 1.6
* @since 1.6
*/
*/
@SuppressWarnings
({
"unchecked"
,
"rawtypes"
})
public
PropertyResourceBundle
(
Reader
reader
)
throws
IOException
{
public
PropertyResourceBundle
(
Reader
reader
)
throws
IOException
{
Properties
properties
=
new
Properties
();
Properties
properties
=
new
Properties
();
properties
.
load
(
reader
);
properties
.
load
(
reader
);
...
...
src/share/classes/java/util/jar/JarVerifier.java
浏览文件 @
8b0903a8
/*
/*
* Copyright (c) 1997, 201
1
, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 201
2
, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
*
* This code is free software; you can redistribute it and/or modify it
* This code is free software; you can redistribute it and/or modify it
...
@@ -325,6 +325,7 @@ class JarVerifier {
...
@@ -325,6 +325,7 @@ class JarVerifier {
* the given file in the jar.
* the given file in the jar.
* @deprecated
* @deprecated
*/
*/
@Deprecated
public
java
.
security
.
cert
.
Certificate
[]
getCerts
(
String
name
)
public
java
.
security
.
cert
.
Certificate
[]
getCerts
(
String
name
)
{
{
return
mapSignersToCertArray
(
getCodeSigners
(
name
));
return
mapSignersToCertArray
(
getCodeSigners
(
name
));
...
...
src/share/classes/java/util/jar/Pack200.java
浏览文件 @
8b0903a8
/*
/*
* Copyright (c) 2003,201
0
, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2003,201
2
, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
*
* This code is free software; you can redistribute it and/or modify it
* This code is free software; you can redistribute it and/or modify it
...
@@ -726,13 +726,13 @@ public abstract class Pack200 {
...
@@ -726,13 +726,13 @@ public abstract class Pack200 {
private
static
final
String
PACK_PROVIDER
=
"java.util.jar.Pack200.Packer"
;
private
static
final
String
PACK_PROVIDER
=
"java.util.jar.Pack200.Packer"
;
private
static
final
String
UNPACK_PROVIDER
=
"java.util.jar.Pack200.Unpacker"
;
private
static
final
String
UNPACK_PROVIDER
=
"java.util.jar.Pack200.Unpacker"
;
private
static
Class
packerImpl
;
private
static
Class
<?>
packerImpl
;
private
static
Class
unpackerImpl
;
private
static
Class
<?>
unpackerImpl
;
private
synchronized
static
Object
newInstance
(
String
prop
)
{
private
synchronized
static
Object
newInstance
(
String
prop
)
{
String
implName
=
"(unknown)"
;
String
implName
=
"(unknown)"
;
try
{
try
{
Class
impl
=
(
PACK_PROVIDER
.
equals
(
prop
))?
packerImpl:
unpackerImpl
;
Class
<?>
impl
=
(
PACK_PROVIDER
.
equals
(
prop
))?
packerImpl:
unpackerImpl
;
if
(
impl
==
null
)
{
if
(
impl
==
null
)
{
// The first time, we must decide which class to use.
// The first time, we must decide which class to use.
implName
=
java
.
security
.
AccessController
.
doPrivileged
(
implName
=
java
.
security
.
AccessController
.
doPrivileged
(
...
...
src/share/classes/sun/util/PreHashedMap.java
浏览文件 @
8b0903a8
...
@@ -126,7 +126,7 @@ public abstract class PreHashedMap<V>
...
@@ -126,7 +126,7 @@ public abstract class PreHashedMap<V>
*/
*/
protected
abstract
void
init
(
Object
[]
ht
);
protected
abstract
void
init
(
Object
[]
ht
);
//
@SuppressWarnings("unchecked")
@SuppressWarnings
(
"unchecked"
)
private
V
toV
(
Object
x
)
{
private
V
toV
(
Object
x
)
{
return
(
V
)
x
;
return
(
V
)
x
;
}
}
...
@@ -259,8 +259,7 @@ public abstract class PreHashedMap<V>
...
@@ -259,8 +259,7 @@ public abstract class PreHashedMap<V>
return
true
;
return
true
;
if
(!(
ob
instanceof
Map
.
Entry
))
if
(!(
ob
instanceof
Map
.
Entry
))
return
false
;
return
false
;
Map
.
Entry
<
String
,
V
>
that
Map
.
Entry
<?,?>
that
=
(
Map
.
Entry
<?,?>)
ob
;
=
(
Map
.
Entry
<
String
,
V
>)
ob
;
return
((
this
.
getKey
()
==
null
return
((
this
.
getKey
()
==
null
?
that
.
getKey
()
==
null
?
that
.
getKey
()
==
null
:
this
.
getKey
()
:
this
.
getKey
()
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录