class Foo{
public static void main(String args[]){
final int x=101;
int y;
if(x>100){
y=-1;
}
System.out.println(y);
}
}
Run Code Online (Sandbox Code Playgroud)
Java编译器理解if语句的条件始终为true,因此将始终初始化y.没有编译错误,如预期的那样.
class Bar{
public static void main(String args[]){
final int x;
x=101;
int y;
if(x>100){
y=-1;
}
System.out.println(y);
}
}
Run Code Online (Sandbox Code Playgroud)
但是当我将x的声明和初始化分成两行时,编译器似乎并不认为条件总是为真,并且y将始终被初始化.
final int x;
x=101;
byte b;
b=x;
System.out.println(b);
Run Code Online (Sandbox Code Playgroud)
这里发生了同样的事情,编译器会丢失精度错误.
final int x=101;
byte b;
b=x;
System.out.println(b);
Run Code Online (Sandbox Code Playgroud)
同样,编译器可以理解x在b的范围内.
我说的是java语言.
变量"this"在类中使用时,引用该类的当前实例,这意味着您不能在静态方法中使用"this".
但是"super",当在类中使用时,指的是该类的超类,而不是超类的实例,这应该意味着你可以在静态方法中使用"super".但事实证明你做不到.
一个可能的解释是说"超级"也指超类的一个实例,但我不明白为什么它应该......
public final static InputStream in = null;
public final static PrintStream out = null;
public final static PrintStream err = null;
Run Code Online (Sandbox Code Playgroud)
但是我们非常清楚,这些流默认连接到控制台并且已经打开.System类setIn(),setOut和setErr()中还有一些方法可以重定向流.当它们被声明为final并设置为初始化值null时,这有什么可能吗?
我编译了以下代码,在调用println()时设置断点并使用netbeans进行调试.我的目标是通过步入源来确定何时将变量System.in初始化为标准输出.但似乎输出流输出已经在调用main方法时初始化.
public static void main(String[] args) {
System.out.println("foo");
}
Run Code Online (Sandbox Code Playgroud) class MyClass {
void myMethod(byte b) {
System.out.print("myMethod1");
}
public static void main(String [] args) {
MyClass me = new MyClass();
me.myMethod(12);
}
}
Run Code Online (Sandbox Code Playgroud)
我理解myMethod()作为int文字的参数,并且参数b是byte类型,这段代码会产生编译时错误.(这可以通过投给参数显式字节来避免:myMethod((byte)12))
class MyClass{
byte myMethod() {
return 12;
}
public static void main(String [ ] args) {
MyClass me = new MyClass();
me.myMethod();
}
}
Run Code Online (Sandbox Code Playgroud)
在经历了这个之后,我预计上面的代码也会产生编译时错误,因为12是一个int文字,返回类型myMethod()是字节.但是没有发生这样的错误.(无需显式的转换:return (byte)12;)
谢谢.
我正在使用语义中的组件来创建顶级菜单+ breadcrumb标头.出于某种原因,当尝试从最顶部位置滚动时,滚动条会"跳跃"
沙箱https://codesandbox.io/s/y7k3zn5qn1
我没有提供context粘性组件的道具.在示例中,它们始终提供封闭的React DOM引用div作为Sticky组件的上下文prop .关于context道具的目的,文件不清楚.(它说"粘性元素应该坚持的上下文")
我是否需要为粘性组件提供上下文支持以停止"跳转"滚动?如果是这样,我如何决定哪个封闭div ref作为上下文道具?
我正在构建一个位置应用程序,我在MainActivity中的Room数据库中显示背景位置.我可以通过调用获得ViewModel
locationViewModel = ViewModelProviders.of(this).get(LocationViewModel.class);
locationViewModel.getLocations().observe(this, this);
Run Code Online (Sandbox Code Playgroud)
当我通过BroadCastReceiver接收位置更新时,应将定期背景位置保存到会议室数据库.他们应该通过电话保存locationViewModel.getLocations().setValue()
public class LocationUpdatesBroadcastReceiver extends BroadcastReceiver {
static final String ACTION_PROCESS_UPDATES =
"com.google.android.gms.location.sample.backgroundlocationupdates.action" +
".PROCESS_UPDATES";
@Override
public void onReceive(Context context, Intent intent) {
if (intent != null) {
final String action = intent.getAction();
if (ACTION_PROCESS_UPDATES.equals(action)) {
LocationResult result = LocationResult.extractResult(intent);
if (result != null) {
List<Location> locations = result.getLocations();
List<SavedLocation> locationsToSave = covertToSavedLocations(locations)
//Need an instance of LocationViewModel to call locationViewModel.getLocations().setValue(locationsToSave)
}
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
问题是我应该如何在像这个BroadcastReceiver这样的非活动类中获取LocationViewModel实例?调用locationViewModel = ViewModelProviders.of(context).get(LocationViewModel.class)上下文是我从onReceive (Context …
我正在尝试在我的应用程序中实现一个 PreferenceActivity,遵循这个问题中接受的答案
我得到上述异常
android.content.ActivityNotFoundException: Unable to find explicit activity class {com.iphonik.chameleon/com.iphonik.AppPreferenceActivity}; have you declared this activity in your AndroidManifest.xml?
Run Code Online (Sandbox Code Playgroud)
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.iphonik.chameleon">
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.GET_TASKS" />
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@android:style/Theme.NoTitleBar">
<activity android:name=".MainMenu">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".Movies" />
<activity android:name=".SettingsActivity" />
<activity android:name=".InfoActivity" />
<receiver
android:name=".AppBroadcastReciever"
android:enabled="true"
android:exported="true"
android:permission="android.permission.RECEIVE_BOOT_COMPLETED">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" …Run Code Online (Sandbox Code Playgroud) 这是场景:我在 LAN 网络上有两台机器。其中之一是充当 Web 服务器。当第二个客户端机器浏览器 (Firefox) 从服务器发出请求时,它发送以下 html
<!DOCTYPE HTML>
<html>
<body>
<img src="C:\Users\General\Desktop\map1.jpg" align="middle">
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
但是图像不显示。我对 img 标签尝试了以下变体:
<img src="C:/Users/General/Desktop/map1.jpg" align="middle">
<img src="file:///C:/Users/General/Desktop/map1.jpg" align="middle">
<img src="http://localhost//file:/C:/Users/General/Desktop/map1.jpg" align="middle">
Run Code Online (Sandbox Code Playgroud)
有趣的是,如果我查看页面源代码并将 html 内容保存到本地文件并在它工作的浏览器中打开它。完全相同的 html 代码在从服务器获取时不起作用,但在本地机器上打开时起作用。
请注意,我正在尝试从客户端计算机加载图像,因为在我的场景中不可能在服务器计算机上存储图像。(服务器实际上是一个没有 SD 卡的 Arduino Mega)
考虑以下代码:
byte b=1;
long l=1000;
b += l;
Run Code Online (Sandbox Code Playgroud)
我希望最后一个语句需要一个显式的强制转换因为,
b+=l被评估为,b = b+l而
(b+l)part给出一个整数.没有显式强制转换,无法将整数分配给byte?
我有一个从更大的表派生出来的临时表。
+-----+----------+---------+
| id | phone | attempt |
+-----+----------+---------+
| 1 | 12345678 | 15 |
| 2 | 87654321 | 0 |
| 4 | 12345678 | 16 |
| 5 | 12345678 | 14 |
| 10 | 87654321 | 1 |
| 11 | 87654321 | 2 |
+-----+----------+---------+
Run Code Online (Sandbox Code Playgroud)
我需要找到与每个电话号码上的最高尝试相对应的 ID(唯一)。电话和尝试并不是独一无二的。
SELECT id, MAX(attempt) FROM temp2 GROUP BY phone
Run Code Online (Sandbox Code Playgroud)
上述查询不会返回相应最大尝试次数的 ID。
java ×5
android ×2
casting ×2
android-architecture-components ×1
conditional ×1
final ×1
html ×1
image ×1
methods ×1
mysql ×1
operators ×1
return-type ×1
semantic-ui ×1
sql ×1
static ×1
sticky ×1
stream ×1
super ×1
this ×1