2021-04-30

Java基础——File类与IO流

File类与IO流File类的静态成员变量绝对路径和相对路径File类的构造方法File类获取功能的方法File类判断功能的方法File类创建和删除功能的方法File类的目录的遍历功能

目录
  • File类与IO流
    • File类的静态成员变量
    • 绝对路径和相对路径
    • File类的构造方法
    • File类获取功能的方法
    • File类判断功能的方法
    • File类创建和删除功能的方法
    • File类的目录的遍历功能

File类与IO流

java.lang.Object
java.io.File

java把电脑中的文件,文件夹(目录)封装成了一个File类,我们可以使用File类对文件和文件夹进行操作

可以使用File类的方法去:

​ 创建一个文件/文件夹

​ 删除文件/文件夹

​ 获取文件/文件夹

​ 判断文件/文件夹是否存在

​ 对文件夹进行遍历

​ 获取文件的大小

File类是一个与系统无关的类,任何操作系统都可以使用这个类中的方法

重点:记住3个单词

  1. file:文件
  2. directory:文件夹/目录
  3. path:路径

File类的静态成员变量

字段摘要
static StringpathSeparator 与系统有关的路径分隔符,为了方便,它被表示为一个字符串。
static charpathSeparatorChar 与系统有关的路径分隔符。
static Stringseparator 与系统有关的默认名称分隔符,为了方便,它被表示为一个字符串。
static charseparatorChar 与系统有关的默认名称分隔符。
public class DemosFile { public static void main(String[] args) {  String pathSeparator = File.pathSeparator;  System.out.println(pathSeparator);//文件名称分隔符:windows:反斜杠 Linux:正斜杠/  char pathSeparatorChar = File.pathSeparatorChar;  System.out.println(pathSeparatorChar);//文件名称分隔符:windows:反斜杠 Linux:正斜杠/  String separator = File.separator;  System.out.println(separator);//路径分隔符 windows:分号 Linux:冒号  char separatorChar = File.separatorChar;  System.out.println(separatorChar);//路径分隔符 windows:分号 Linux:冒号  /*操作路径不能写死了  * 例如:  *  C:\Users\98398\Desktop\我的MarkDown文件  Windows  *  C:/Users/98398/Desktop/我的MarkDown文件  Linnux  *正确写法:  *  "C:"+File.separator+"User"+File.separator+"a"+File.separator+"a.png"  *  * */ }}


绝对路径和相对路径

路径:

​ 绝对路径:是一个完整的路径

​ 以盘符开始的路径

​ 相对路径:是一个简化的路径

​ 相对指的是相对于当前项目的根目录

​ 如果使用当前项目的根目录,路径可以简化书写(可以省略根目录不写)

​ 注意:

	1. 路径不区分大小写	2. 路径中文件名称分隔符Windows使用反斜杠,反斜杠是转义字符,两个反斜杠代表一个普通的反斜杠

File类的构造方法

import java.io.File;public class DemosFile2 { /**  * File类的构造方法  */ public static void main(String[] args) {  show1();  show2("C:\\","c.txt ");  show3(); } private static void show3() {  File parent = new File("C:\\");  File file3 = new File(parent, "d.java");  System.out.println(file3); } private static void show2(String a,String b) {  File file2 = new File(a, b);  System.out.println(file2); } private static void show1() {  File file1 = new File("C:\\Users\\98398\\Desktop\\我的MarkDown文件\\a.txt");  System.out.println(file1);  File file2 = new File("C:\\Users\\98398\\Desktop\\我的MarkDown文件");  System.out.println(file2);  File file3 = new File("b.txt");  System.out.println(file3); }}

File类获取功能的方法

方法摘要
boolean canExecute()
测试应用程序是否可以执行此抽象路径名表示的文件。
boolean canRead()
测试应用程序是否可以读取此抽象路径名表示的文件。
boolean canWrite()
测试应用程序是否可以修改此抽象路径名表示的文件。
int compareTo(File pathname)
按字母顺序比较两个抽象路径名。
boolean createNewFile()
当且仅当不存在具有此抽象路径名指定名称的文件时,不可分地创建一个新的空文件。

static File createTempFile(String prefix, String suffix)
在默认临时文件目录中创建一个空文件,使用给定前缀和后缀生成其名称。
static File createTempFile(String prefix, String suffix, File directory)
在指定目录中创建一个新的空文件,使用给定的前缀和后缀字符串生成其名称。
boolean delete()
删除此抽象路径名表示的文件或目录。

void deleteOnExit()
在虚拟机终止时,请求删除此抽象路径名表示的文件或目录。
boolean equals(Object obj)
测试此抽象路径名与给定对象是否相等。
boolean exists()
测试此抽象路径名表示的文件或目录是否存在。

File getAbsoluteFile()
返回此抽象路径名的绝对路径名形式。
String getAbsolutePath()
返回此抽象路径名的绝对路径名字符串。

File getCanonicalFile()
返回此抽象路径名的规范形式。
String getCanonicalPath()
返回此抽象路径名的规范路径名字符串。
long getFreeSpace()
返回此抽象路径名指定的分区中未分配的字节数。
String getName()
返回由此抽象路径名表示的文件或目录的名称。

String getParent()
返回此抽象路径名父目录的路径名字符串;如果此路径名没有指定父目录,则返回 null。
File getParentFile()
返回此抽象路径名父目录的抽象路径名;如果此路径名没有指定父目录,则返回 null。
String getPath()
将此抽象路径名转换为一个路径名字符串。

long getTotalSpace()
返回此抽象路径名指定的分区大小。
long getUsableSpace()
返回此抽象路径名指定的分区上可用于此虚拟机的字节数。
int hashCode()
计算此抽象路径名的哈希码。
boolean isAbsolute()
测试此抽象路径名是否为绝对路径名。
boolean isDirectory()
测试此抽象路径名表示的文件是否是一个目录。

boolean isFile()
测试此抽象路径名表示的文件是否是一个标准文件。

boolean isHidden()
测试此抽象路径名指定的文件是否是一个隐藏文件。
long lastModified()
返回此抽象路径名表示的文件最后一次被修改的时间。
long length()
返回由此抽象路径名表示的文件的长度。

String[] list()
返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中的文件和目录。

String[] list(FilenameFilter filter)
返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中满足指定过滤器的文件和目录。
File[] listFiles()
返回一个抽象路径名数组,这些路径名表示此抽象路径名表示的目录中的文件。

File[] listFiles(FileFilter filter)
返回抽象路径名数组,这些路径名表示此抽象路径名表示的目录中满足指定过滤器的文件和目录。
File[] listFiles(FilenameFilter filter)
返回抽象路径名数组,这些路径名表示此抽象路径名表示的目录中满足指定过滤器的文件和目录。
static File[] listRoots()
列出可用的文件系统根。
boolean mkdir()
创建此抽象路径名指定的目录。

boolean mkdirs()
创建此抽象路径名指定的目录,包括所有必需但不存在的父目录。

boolean renameTo(File dest)
重新命名此抽象路径名表示的文件。
boolean setExecutable(boolean executable)
设置此抽象路径名所有者执行权限的一个便捷方法。
boolean setExecutable(boolean executable, boolean ownerOnly)
设置此抽象路径名的所有者或所有用户的执行权限。
boolean setLastModified(long time)
设置此抽象路径名指定的文件或目录的最后一次修改时间。
boolean setReadable(boolean readable)
设置此抽象路径名所有者读权限的一个便捷方法。
boolean setReadable(boolean readable, boolean ownerOnly)
设置此抽象路径名的所有者或所有用户的读权限。
boolean setReadOnly()
标记此抽象路径名指定的文件或目录,从而只能对其进行读操作。
boolean setWritable(boolean writable)
设置此抽象路径名所有者写权限的一个便捷方法。
boolean setWritable(boolean writable, boolean ownerOnly)
设置此抽象路径名的所有者或所有用户的写权限。
String toString()
返回此抽象路径名的路径名字符串。
URI toURI()
构造一个表示此抽象路径名的 file: URI。
URL toURL()
已过时。 此方法不会自动转义 URL 中的非法字符。建议新的代码使用以下方式将抽象路径名转换为 URL:首先通过 toURI 方法将其转换为 URI,然后通过 URI.toURL 方法将 URI 装换为 URL。


import java.io.File;public class DemosFile3 { /**  * String getAbsolutePath() 返回此抽象路径名的绝对路径名字符串。  * String getName() 返回由此抽象路径名表示的文件或目录的名称。  * String getPath() 将此抽象路径名转换为一个路径名字符串。  * long length() 返回由此抽象路径名表示的文件的长度。  */ public static void main(String[] args) {  show1();  System.out.println("———————————————————————————————————");  show2();  System.out.println("———————————————————————————————————");  show3();  System.out.println("———————————————————————————————————");  show4(); }/*long length() 返回由此抽象路径名表示的文件的长度。* 此方法获取的是构造方法中指定的文件的大小,以字节为单位* 注意:*  1.只能获取文件的大小,无法获取文件夹的大小*  (因为计算机中文件夹的大小属性是没有值的*  我们可以通过属性去查看文件夹的大小,但是看到的大小值其实是该文件夹里所有文件的大小总和)**  2.如果构造方法中给出的路径不存在,那么length()方法返回的就是0*/ private static void show4() {  File file1 = new File("C:\\Users\\98398\\Desktop\\我的截图\\hahaahahah.jpg");//真实存在的文件(绝对路径)  long length1 = file1.length();//获取到的是文件大小  System.out.println(length1);  File file2 = new File("pom.

运行结果:


File类判断功能的方法

boolean isDirectory()
测试此抽象路径名表示的文件是否是一个目录。

boolean isFile()
测试此抽象路径名表示的文件是否是一个标准文件。

boolean exists()
测试此抽象路径名表示的文件或目录是否存在。

import java.io.File;public class DemosFile4 { /*File类判断功能的方法 boolean exists() 测试此抽象路径名表示的文件或目录是否存在。 boolean isDirectory() 测试此抽象路径名表示的文件是否是一个目录。 boolean isFile() 测试此抽象路径名表示的文件是否是一个标准文件。*/ public static void main(String[] args) {  show1();  System.out.println("———————————————————————————————————");  show2(); } private static void show3() { } /**  * boolean isDirectory() 测试此抽象路径名表示的文件是否是一个目录。  * 用于判断构造方法中路径是否以文件夹结尾  *  是:true  *  否:false  *  *boolean isFile() 测试此抽象路径名表示的文件是否是一个标准文件。  * 用于判断构造方法中路径是否以文件结尾  *  是:true  *  否:false  *  *  注意:  *   电脑硬盘中只有文件或文件夹,所以两个方法是互斥的  *   这两个方法的使用前提是,路径必须是真实存在的,否则都返回false  */ private static void show2() {  File file1 = new File("E:\\IdeaProjects\\spring-studyxxxx");//不存在的绝对路径  System.out.println(file1.isDirectory());//false  System.out.println(file1.isFile());//false  //代码优化  //先判断路径存不存在,如果路径不存在就没有必要获取  if(file1.exists()){//路径不存在,不执行下面两行代码   System.out.println(file1.isDirectory());   System.out.println(file1.isFile());  }  File file2 = new File("E:\\IdeaProjects\\spring-study");//真实存在的绝对路径,结尾是文件夹  if(file2.exists()){   System.out.println(file2.isDirectory());//结尾是文件夹,所以返回值是true   System.out.println(file2.isFile());//结尾是文件夹不是文件,所以返回值是false  }  File file3 = new File("E:\\IdeaProjects\\spring-study\\FileAndIO\\pom.

运行结果:


File类创建和删除功能的方法

boolean createNewFile()
当且仅当不存在具有此抽象路径名指定名称的文件时,不可分地创建一个新的空文件。

boolean delete()
删除此抽象路径名表示的文件或目录。

boolean mkdir()
创建此抽象路径名指定的目录。

boolean mkdirs()
创建此抽象路径名指定的目录,包括所有必需但不存在的父目录。

import java.io.File;import java.io.IOException;public class DemosFile5 { /* boolean createNewFile() 当且仅当不存在具有此抽象路径名指定名称的文件时,不可分地创建一个新的空文件。 boolean delete() 删除此抽象路径名表示的文件或目录。 boolean mkdir() 创建此抽象路径名指定的目录。 boolean mkdirs() 创建此抽象路径名指定的目录,包括所有必需但不存在的父目录。 */ public static void main(String[] args) throws IOException {  show1();  show2();  show3(); }/** boolean delete() 删除此抽象路径名表示的文件或目录。* 此方法,可以删除构造方法路径中的文件也可以删除构造方法路径中的文件夹* 返回值:* true:文件/文件夹删除成功,返回true* false:文件夹中有内容,就不会删除文件文件夹,返回false;或者构造方法中路径是错的,路径不存在,就删除不了,也会返回false* 注意事项:* delete方法是直接从硬盘删除文件/文件夹,不会经过回收站,所以使用此方法要谨慎,避免删除重要文件导致不必要的损失* */ private static void show3() throws IOException {  File file1 = new File("FileAndIO\\src\\main\\java\\a");//构造方法路径所表示的文件/文件夹就是要删除的对象  boolean b1 = file1.delete();//a文件夹被删除  System.out.println("b1:"+b1);//true  File file2 = new File("FileAndIO\\src\\main\\java\\a.txt");//构造方法路径所表示的文件/文件夹就是要删除的对象  boolean b2 = file2.delete();//a.txt文件被删除  System.out.println("b2:"+b2);//true  File file3 = new File("FileAndIO\\src\\main\\java\\asasas.txt");//构造方法路径所表示的文件/文件夹就是要删除的对象  boolean b3 = file3.delete();//文件不存在或路径错误,删除失败  System.out.println("b3:"+b3);//false  //先再abc.txt文件夹里放点东西,我随便创建了一个.java文件  File file4 = new File("FileAndIO\\src\\main\\java\\abc.txt\\a.txt");//绝对路径  System.out.println(file4.createNewFile());//true  File file5 = new File("FileAndIO\\src\\main\\java\\abc.txt");//构造方法路径所表示的文件/文件夹就是要删除的对象  boolean b5 = file5.delete();//文件夹中有内容,无法删除文件夹  System.out.println("b5:"+b5);//false } /* boolean mkdir() 创建此抽象路径名指定的目录。  boolean mkdirs() 创建此抽象路径名指定的目录,包括所有必需但不存在的父目录。  创建文件的路径和名称再构造方法中给出(构造方法的参数)   * 返回值:   * true:文件夹不存在,不会创建,返回true   * false:文件夹存在,不会创建,返回false   * 注意:   *  1.此方法只能创建文件夹,不能创建文件  */ private static void show2() {  File file1 = new File("FileAndIO\\src\\main\\java\\a");//只要路径存在,文件夹名字唯一,就能创建成功  boolean mkdir1 = file1.mkdir();  System.out.println("mkdir1:"+mkdir1);//true  File file2 = new File("FileAndIO\\src\\main\\java\\a\\b\\c\\d");//无法创建一个有一个嵌套的文件夹  boolean mkdir2 = file2.mkdir();  System.out.println("mkdir2:"+mkdir2);//false  File file3 = new File("FileAndIO\\src\\main\\java\\abc.txt");//创建的还是一个文件夹,abc.txt是文件夹的名字  boolean mkdir3 = file3.mkdir();  System.out.println("mkdir3:"+mkdir3);//true  File file4 = new File("Fil\\ccc.txt");//路径错误,无法创建,但是这个方法没有异常抛出  boolean mkdir4 = file4.mkdir();  System.out.println("mkdir4:"+mkdir4);//false } /**  *boolean createNewFile() 当且仅当不存在具有此抽象路径名指定名称的文件时,不可分地创建一个新的空文件。  * 创建文件的路径和名称再构造方法中给出(构造方法的参数)  * 返回值:  * true:文件不存在,不会创建,返回true  * false:文件存在,不会创建,返回false  * 注意:  *  1.此方法只能创建文件,不能创建文件夹  *  2.创建文件的路径必须存在,否则会抛出异常  */ private static void show1() throws IOException {  File file1 = new File("E:\\IdeaProjects\\spring-study\\FileAndIO\\src\\main\\java\\a.txt");//绝对路径  boolean b1 = file1.createNewFile();  System.out.println("b1:"+b1);//true  File file2 = new File("FileAndIO\\src\\main\\java\\b.txt");//绝对路径  System.out.println(file2.createNewFile());//true }}

运行结果:


File类的目录的遍历功能

String[] list()
返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中的文件和目录。

File[] listFiles()
返回一个抽象路径名数组,这些路径名表示此抽象路径名表示的目录中的文件。

import java.io.File;public class DemosFile6 { /* String[] list()   返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中的文件和目录。 File[] listFiles()   返回一个抽象路径名数组,这些路径名表示此抽象路径名表示的目录中的文件。   注意:    list方法和listFiles方法遍历的是构造方法中给出的目录    如果构造方法中给出的目录的路径不存在,就会抛出空指针异常    如果构造方法中给出的路径不是一个目录,也会抛出空指针异常   */ public static void main(String[] args) {  show1();  show2(); }/*File[] listFiles()   返回一个抽象路径名数组,这些路径名表示此抽象路径名表示的目录中的文件。  此方法会遍历构造方法中给出的目录,会获取目录中所有文件/文件夹的名称,把获取到的所有文件/文件夹封装为File对象并存储到File数组中   */ private static void show2() {  File file1 = new File("E:\\IdeaProjects\\spring-study\\FileAndIO\\src\\main\\java");  File[] files = file1.listFiles();  System.out.println(files);  for (File file : files) {   System.out.println(file);  } } /*String[] list()    返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中的文件和目录。  此方法会遍历构造方法中给出的目录,会获取目录中所有文件/文件夹的名称,把获取到的多个名称存储到一个String类型的数组中*/ private static void show1() {  File file1 = new File("E:\\IdeaProjects\\spring-study\\FileAndIO\\src\\main\\java");  String[] list1 = file1.list();  System.out.println(list1);  //遍历打印list1数组  for (String s : list1) {   System.out.println(s);  } }}

运行结果:










原文转载:http://www.shaoqun.com/a/718754.html

跨境电商:https://www.ikjzd.com/

跨境通电子商务:https://www.ikjzd.com/w/1329

贝恩投资公司:https://www.ikjzd.com/w/1336


File类与IO流File类的静态成员变量绝对路径和相对路径File类的构造方法File类获取功能的方法File类判断功能的方法File类创建和删除功能的方法File类的目录的遍历功能目录File类与IO流File类的静态成员变量绝对路径和相对路径File类的构造方法File类获取功能的方法File类判断功能的方法File类创建和删除功能的方法File类的目录的遍历功能File类与IO流java.
easel:https://www.ikjzd.com/w/1721
心怡物流:https://www.ikjzd.com/w/1327
转运中国:https://www.ikjzd.com/w/1549
亚马逊频发骗局大揭底,卖家遇到了该如何正确处理?:https://www.ikjzd.com/home/109809
2019年Wish流量算法发生改变,卖家"捞金"重在这五步:https://www.ikjzd.com/home/12818
广告:https://www.kjyunke.com/categories/134/courses

Java文档注释全攻略


注释:注释起到对代码标注和解释的作用,如果你去看看JDK源码,会发现他们有许多的注释,而且注释是比代码还要多的,可见为代码添加注释是非常重要的,写好注释能让别人更加容易看懂你的代码,注释可以分为以下三种。

(一)单行注释

使用//进行注释:

//阿平好帅

(二)多行注释

使用/**/进行注释:

/** 阿平是真的帅/


(三)文档注释

使用/** */进行注释:

/**  阿平也太帅了吧*/

文档注释主要是用来生成java开发文档javadoc的,生成的开发文档和Java本身的API帮助文档是一样的,也就是对你所写的类进行解释说明,所以它还需要搭配一些文档标记,进行解释说明,而且在文档注释中可以使用HTML语言,jdk源码中有大量的文档注释,所以弄懂文档注释可以帮助你更好的看懂源码。

文档注释通常还会配合HTML标签进行使用,比较常用的标签有<p><pre>等标签,p标签用于表示段落,pre标签可用于显示计算机源码。

注意:pre标签中如果有小于号、大于号、例如泛型 在生产javadoc时会报错。


1、文档标记

(1)通用的文档标记

以下文档标记在类、方法、变量和常量上都经常使用。

  1. @link: 用于快速链接到相关代码,使用格式:{@link 包名.类名#方法名(参数类型)}

    // 完全限定的类名{@link java.util.Collections}// 省略包名,只写类名{@link String}// 省略类名,表示指向当前的某一个方法{@link #toString()}// 完全限定方法名,包名.类名.方法名(参数类型){@link java.lang.String#charAt(int)}
  2. @code: 将文本标记为代码样式文本,一般在Javadoc中只要涉及到类名或者方法名,都需要使用@code进行标记,使用格式:{@code text},其会被解析为 text

    //标记类名{@code ArrayList}//标记方法名{@code isEmpty}//标记某个代码关键字{@code null}

(2)类上常用文档标记

  1. @param:如果一个类支持泛型时,可以通过@param来解释泛型的类型

    /** @param <E> the type of elements in this list */
  2. @author:用来标记作者,如果一段程序是由多个作者来维护,则可以标记多个@author,@author 后面可以跟作者姓名(也可以附带作者邮箱地址)、组织名称(也可以附带组织官网地址)

    // 纯文本作者@author Rod Johnson// 纯文本作者,邮件@author Igor Hersht, igorh@ca.ibm.com// 超链接邮件 纯文本作者@author <a href="mailto:ovidiu@cup.hp.com">Ovidiu Predescu</a>// 纯文本邮件@author shane_curcuru@us.ibm.com// 纯文本 组织@author Apache Software Foundation// 超链接组织地址 纯文本组织@author <a href="https://jakarta.apache.org/turbine"> Apache Jakarta Turbine</a>
  3. @see :另请参阅的意思,一般用于标记与本类相关联的类,该标注可以用在类或方法上。

    /** * @see IntStream * @see LongStream * @see DoubleStream * @see <a href="package-summary.html">java.util.stream</a> * /
  4. @since:表示从以下版本开始有这个类,标记文件创建时项目当时对应的版本,后面可以跟版本号或是时间。

    //跟版本号,以下是ArrayList类里的标记,说明从jdk1.2开始就有该类了/* * @since 1.2**///跟时间/*** @since 20 April 2021*/
  5. @version:用于标记当前类版本,默认为1.0

     /** * @version 1.0 */

以上是类上常用的文档标注,类上的文档格式如下:

  1. 概要描述:通常用一段话简要的描述该类的基本内容。
  2. 详细描述:通常用几大段话详细描述该类的功能与相关情况。
  3. 文档标注:用于标注该类的作者、时间、版本、参略等信息。

以下是String类的中文档标注的事例:

/** * The {@code String} class represents character strings. All * string literals in Java programs, such as {@code "abc"}, are * implemented as instances of this class. * <p> * Strings are constant; their values cannot be changed after they * are created. String buffers support mutable strings. * Because String objects are immutable they can be shared. For example: * <blockquote><pre> *  String str = "abc"; * </pre></blockquote><p> * is equivalent to: * <blockquote><pre> *  char data[] = {'a', 'b', 'c'}; *  String str = new String(data); * </pre></blockquote><p> * Here are some more examples of how strings can be used: * <blockquote><pre> *  System.out.println("abc"); *  String cde = "cde"; *  System.out.println("abc" + cde); *  String c = "abc".substring(2,3); *  String d = cde.substring(1, 2); * </pre></blockquote> * <p> * The class {@code String} includes methods for examining * individual characters of the sequence, for comparing strings, for * searching strings, for extracting substrings, and for creating a * copy of a string with all characters translated to uppercase or to * lowercase. Case mapping is based on the Unicode Standard version * specified by the {@link java.lang.Character Character} class. * <p> * The Java language provides special support for the string * concatenation operator (&nbsp;+&nbsp;), and for conversion of * other objects to strings. For additional information on string * concatenation and conversion, see <i>The Java&trade; Language Specification</i>. * * <p> Unless otherwise noted, passing a {@code null} argument to a constructor * or method in this class will cause a {@link NullPointerException} to be * thrown. * * <p>A {@code String} represents a string in the UTF-16 format * in which <em>supplementary characters</em> are represented by <em>surrogate * pairs</em> (see the section <a href="Character.html#unicode">Unicode * Character Representations</a> in the {@code Character} class for * more information). * Index values refer to {@code char} code units, so a supplementary * character uses two positions in a {@code String}. * <p>The {@code String} class provides methods for dealing with * Unicode code points (i.e., characters), in addition to those for * dealing with Unicode code units (i.e., {@code char} values). * * <p>Unless otherwise noted, methods for comparing Strings do not take locale * into account. The {@link java.text.Collator} class provides methods for * finer-grain, locale-sensitive String comparison. * * @implNote The implementation of the string concatenation operator is left to * the discretion of a Java compiler, as long as the compiler ultimately conforms * to <i>The Java&trade; Language Specification</i>. For example, the {@code javac} compiler * may implement the operator with {@code StringBuffer}, {@code StringBuilder}, * or {@code java.lang.invoke.StringConcatFactory} depending on the JDK version. The * implementation of string conversion is typically through the method {@code toString}, * defined by {@code Object} and inherited by all classes in Java. * * @author Lee Boynton * @author Arthur van Hoff * @author Martin Buchholz * @author Ulf Zibis * @see  java.lang.Object#toString() * @see  java.lang.StringBuffer * @see  java.lang.StringBuilder * @see  java.nio.charset.Charset * @since 1.0 * @jls  15.18.1 String Concatenation Operator + */public final class String implements java.io.Serializable, Comparable<String>, CharSequence {}

(3)方法上常用文档标记

  1. @param:该文档标记后面写方法的参数名,再写参数描述。

    /*** @param str * the {@code CharSequence} to check (may be {@code null})*/public static boolean containsWhitespace(@Nullable CharSequence str) {}
  2. @return:该文档标记后面写返回值得描述。

    /*** @return {@code true} if the {@code String} is not {@code null}, its*/public static boolean hasText(@Nullable String str){}
  3. @throws:该文档标记后面写异常的类型和异常的描述,用于描述该方法可能抛出的异常。

    /*** @throws IllegalArgumentException when the given source contains invalid encoded sequences*/public static String uriDecode(String source, Charset charset){}
  4. @exception:该标注用于描述方法签名throws对应的异常。

    /*** @exception IllegalArgumentException if <code>key</code> is null.*/public static Object get(String key) throws IllegalArgumentException {}
  5. @see:可用在类与方法上,表示参考的类或方法。

    /*** @see java.net.URLDecoder#decode(String, String)*/public static String uriDecode(String source, Charset charset){}

以上是方法上常用的文档标注,方法上的文档格式如下:

  1. 概要描述:通常用一段话简要的描述该方法的基本内容。
  2. 详细描述:通常用几大段话详细描述该方法的功能与相关情况。
  3. 文档标注:用于标注该方法的参数、返回值、异常、参略等信息。

以下是String类中charAt方法的示例:

/**  * Returns the {@code char} value at the  * specified index. An index ranges from {@code 0} to  * {@code length() - 1}. The first {@code char} value of the sequence  * is at index {@code 0}, the next at index {@code 1},  * and so on, as for array indexing.  *  * <p>If the {@code char} value specified by the index is a  * <a href="Character.html#unicode">surrogate</a>, the surrogate  * value is returned.  *  * @param  index the index of the {@code char} value.  * @return  the {@code char} value at the specified index of this string.  *    The first {@code char} value is at index {@code 0}.  * @exception IndexOutOfBoundsException if the {@code index}  *    argument is negative or not less than the length of this  *    string.  */ public char charAt(int index) {}

(4)变量和常量上的文档规范

变量和常量上用的比较多的文档标记是@link和@code,主要注释该常量或变量的基本用法和相关内容。

以下是示例:

/**  * The value is used for character storage.  *  * @implNote This field is trusted by the VM, and is a subject to  * constant folding if String instance is constant. Overwriting this  * field after construction will cause problems.  *  * Additionally, it is marked with {@link Stable} to trust the contents  * of the array. No other facility in JDK provides this functionality (yet).  * {@link Stable} is safe here, because value is never null.  */ private final byte[] value;

2、生成帮助文档

首先先展示下我写的文档注释代码:

HelloWorld.java

package demo2;/** * <p>这是一个测试javadoc的类 * * @author codepeace * @version 1.0 * @since 1.8 * */public class HelloWorld {	String name;		/**	 * 	 * @param name	 * @return name 	 * @throws Exception	 * {@code name} 	 */	public String test(String name)throws Exception{		return name;	}}

Doc.java

package demo2;/** * <p>这是一个测试javadoc的类 * * @author codepeace * @version 1.0 * @since 1.8 * */public class Doc {	String name;		/**	 * 	 * @param name	 * @return name 	 * @throws Exception	 * {@code name} 	 */	public String test(String name)throws Exception{		return name;	}}

(1)使用命令行的方式

  1. 用wiodow打开cmd终端,然后进入要编译的java文件目录的路径中,如下所示:

  1. 输入命令:javadoc -encoding UTF-8 -charset UTF-8 \*.java,就能将你的java文件编译成帮助文档。
  • -encoding 是编码格式, -charset是字符集格式,需要查看你文件的编码格式,可以通过打开记事本查看编码格式。

  1. 编译成功后你后发现当前路径下会多出很多文件,我们需要的文件是index.html文件。

  1. 点开后为如下样式,至此帮助文档生成完毕。

(2)使用IDE工具的方式

  • 使用idea生成javadoc文档
  1. 打开 idea,点击 Tools-> Generate JavaDoc,这样会打开生成 javadoc 文档的配置页面。

  1. 配置javadoc文档输出详情:
    1. 选择要输出文档的范围,选择是整个项目还是模块还是单个文件。
    2. 文档要输出路径。
    3. 选择哪些类型的方法或参数可以生成文档。
    4. Locale 选择地区,这个决定了文档的语言,中文就是zh_CN。
    5. 传入JavaDoc的参数,一般写 -encoding UTF-8 -charset UTF-8,表示编码格式。

  1. 点击确定,运行无误后,打开你所选择的文档输出路径后,选择index.html,就是所输出的javadoc文档。


  • 使用eclipse生成javadoc文档
  1. 打开eclipse,点击 Project-> Generate JavaDoc,这样会打开生成 javadoc 文档的配置页面。

  1. 配置以下javadoc文档输出详情,后点击next
    1. 选择要输出成文档的文件或模块
    2. 选择哪些类型的方法或参数可以生成文档
    3. 文档要输出路径。

  1. 设置文档名后,点击next

  1. 设置编码格式 一般写-encoding UTF-8 -charset UTF-8,设置jre版本,然后点击完成,在刚才设置的输出路径中找到index.html即可。

  1. 注意点:eclipse的默认编码不是UTF-8,所以要将其修改为UTF-8,修改方法如下:

    打开eclipse,点击 Window-> Preferences->Workspace,将默认的GBK编码改为UTF-8即可。



更多精彩内容敬请关注微信公众号:【平兄聊Java】









原文转载:http://www.shaoqun.com/a/717755.html

跨境电商:https://www.ikjzd.com/

知无不言:https://www.ikjzd.com/w/1308

俄罗斯灰色清关:https://www.ikjzd.com/w/1409


注释:注释起到对代码标注和解释的作用,如果你去看看JDK源码,会发现他们有许多的注释,而且注释是比代码还要多的,可见为代码添加注释是非常重要的,写好注释能让别人更加容易看懂你的代码,注释可以分为以下三种。(一)单行注释使用//进行注释://阿平好帅(二)多行注释使用/**/进行注释:/**阿平是真的帅/(三)文档注释使用/***/进行注释:/**阿平也太帅了吧*/文档注释主要是用来生成java开发
tinypic:https://www.ikjzd.com/w/114
imgur:https://www.ikjzd.com/w/156
塔图:https://www.ikjzd.com/w/2274
亚马逊美国本土大卖如何营销产品:https://www.ikjzd.com/tl/99065
亚马逊爆款打造计划复盘:https://www.ikjzd.com/tl/109315
赚了21.43亿,却损失了9000亿!亚马逊年年亏损,却只是为了更快:https://www.ikjzd.com/home/109683

亚马逊美国多渠道费用调整!Ebay和沃尔玛禁止使用亚马逊物流

近日,亚马逊宣布从6月1日起,美国多渠道配送(MCF)进行费用调整。亚马逊表示在之前2020年12月的时候,他们推迟了年度费用调整并收取了费用,在充满挑战的冬季为卖家提供支持。

现在,亚马逊对2021年美国多渠道配送费用页面更改如下:

1、将适度提高配送费用(平均约3%),以反映不断变化的配送,运输和仓储成本。该增长与履行服务的行业平均增长一致。


2、添加了阻止亚马逊物流运送订单的选项,但需收取5%的附加费。由于eBay和Walmart之类的销售渠道禁止使用Amazon Logistics(亚马逊物流),因此可以在FBA设置中的帐户级别屏蔽此送货方式 或用于单个订单。


3、将大多数MCF产品尺寸层与"亚马逊配送"层相结合,并增加了一个新的"小标准尺寸"层:2盎司或更小一层。将取消大型特大型产品和特殊特大型产品的快速运输和优先运输速度。

 

亚马逊表示,卖家还可以注册成为无品牌包装和国际运输功能的Beta测试的候补名单。(许多卖家宁愿不要将亚马逊品牌的包裹送给在其他渠道下订单的顾客)


除了提醒卖家6月将要收取更高的费用(平均费用增加约3%)外,并表示它最近推出了许多"需求最大的" MCF功能,其中包括:


1、改进了客户订单的准时运输。现在,库存速度的标准速度订单在创建订单后的两个工作日内发货,加急和优先速度订单在一个工作日内发货。


2、增加了跟踪AfterShip的功能,以确保可以在Etsy和Wish等热门渠道上跟踪Amazon Logistics的货物。也可以在Swiship.com上搜索任何MCF跟踪号。可以在您的卖方中心订单详细信息页面上或通过我们的跟踪API访问跟踪号。如果在提交客户订单时提供他们的电子邮件地址,则可以自动将其发送给客户。


3、在计算库存绩效指数(IPI)分数时,将使用您的MCF数量,这可能有助于您有资格获得无限存储空间。要查看您的IPI分数,请转到"广告资源效果"信息中心。

(原创:跨境知道 FAN)

文章来源:https://www.ikjzd.com/home/144530

跨境电商:https://www.ikjzd.com/

环球市场:https://www.ikjzd.com/w/1762

赛兔:https://www.ikjzd.com/w/2375

笨鸟:https://www.ikjzd.com/w/2713

亚马逊美国多渠道费用调整!Ebay和沃尔玛禁止使用亚马逊物流

近日,亚马逊宣布从6月1日起,美国多渠道配送(MCF)进行费用调整。亚马逊表示在之前2020年12月的时候,他们推迟了年度费用调整并收取了费用,在充满挑战的冬季为卖家提供支持。

深圳装修公司——新房装修水路改造误区是什么

 水路改造作为装修房子中一个非常关键的基础工程,而且很多时候还是隐蔽在墙体之中,若新房装修流程之前期没有引起足够的重视,后期使用时一旦出现问题,可能就会是个大麻烦。所以在施工前一定要先了解新房装修水路改造误区是什么,这样才不会留下隐患。

  一:冷热水管不分色  许多人对水管选择不是很注意,挑选的时候经常遇到有红色和蓝色两种标记的水管。为了方便,消费者往往会只选择一种颜色的水管。到了维修水管是才发现很难找到对应的水管。  解决方法:对于水管的挑选首先要明确水管的颜色,对冷热水管路进行分色套管处理,所有热水管均为红色,冷水管均为蓝色,明确地分色选择水管便于施工检查及维修区分。如果难以分色的话,那一定要注意冷、热水管的安装方向。  二:水路走地下  通常都是将水路埋在顶面吊顶中,但仍然有不少业主希望将水路走在地下,认为这样走的线路可以节省一些,但这实际是一种特别危险的举措。新房装修水路改造误区是什么  解决方法:如果将水路走在自家的房顶上,水路出现渗漏问题,马上就可以发现漏点在哪里。现在厨卫一般使用铝扣板吊顶,将吊顶拆开就可以进行检修,非常简单。即使漏水,也不会漏到楼下邻居家中,避免影响邻里关系。  三:所有水管都可接热水  现在市面上销售的许多水管都是冷热两用的,因此,许多消费者就存在误区,认为所有的水管都是冷热两用的,其实并非如此。  解决方法:一般常用的PPR管、PE管、铜管都是冷热两用,但U-PVC管则不能用于接热水,这种水管常用与下水道。所以,选水管时要注意水管的材质。  四:管线相接非垂直  在铺设水路的时候,管线和接头不是垂直的,没有进行直角对接的情况,基本都是施工队偷工减料、施工不规范造成的,业主在施工过程中也要加以监督。也有的业主为了节省材料,将水管直接弯曲,这样容易使水管两壁厚度不一,水压不均衡,对水管造成损伤。  解决方法:铺设水路时,水管之间必须用接头相连,连接后,两根水管之间的夹角呈90度。  除以上几点新房装修水路改造误区外,还要注意确定好各个使用点的位置,合理走管,这样才能够避免后期很多不必要的麻烦。

原文转载:http://home.shaoqun.com/a/182212.html

跨境电商:https://www.ikjzd.com/

菜鸟网络:https://www.ikjzd.com/w/1547

敏思达:https://www.ikjzd.com/w/2304


水路改造作为装修房子中一个非常关键的基础工程,而且很多时候还是隐蔽在墙体之中,若新房装修流程之前期没有引起足够的重视,后期使用时一旦出现问题,可能就会是个大麻烦。所以在施工前一定要先了解新房装修水路改造误区是什么,这样才不会留下隐患。  一:冷热水管不分色  许多人对水管选择不是很注意,挑选的时候经常遇到有红色和蓝色两种标记的水管。为了方便,消费者往往会只选择一种颜色的水管。到了维修水管是才发现很
邮乐网:https://www.ikjzd.com/w/1776
insider:https://www.ikjzd.com/w/1786
gem:https://www.ikjzd.com/w/1997
口述:我和初恋男友旧情复燃伤了他的妻子:http://lady.shaoqun.com/a/273656.html
口述:男友笑我胸部太小 一亲热我就自卑男友胸小亲热:http://lady.shaoqun.com/m/a/28971.html
曝光和点击都挺高,Listing转化率却很低!问题出在哪:https://www.ikjzd.com/home/134528

全麻和半麻有何区别?全麻就是睡了一觉?醒来会变傻、变笨?

核心提示:全麻就是全身麻醉,指整体丧失感觉的麻醉。半麻就是局部麻醉,指局部丧感觉的麻醉。其实,在医学术语上是没有"半麻"这个说法的,只有全身麻醉和其他非全身麻醉方法,比如椎管内阻滞、局部神经阻滞等。

如果你是一位孕妇,即将剖腹产了,会感到害怕吗?

小九相信,准妈妈们的心里多多少少有些害怕的,除了担心出意外,更多的人是怕痛——毕竟剖腹产不是全麻,而是半麻,从一个网友的体验,我们就能了解一二。

我是顺产转剖腹产,被抬上手术床的时候还痛得死去活来,打完麻醉后,我的第一感觉是"好爽啊,整个世界都美好了!",然后就感受不到疼痛了。

在手术的过程中,我的头脑是清晰的,能听到医生说话,甚至能听到手术刀划过肚皮的声音。由于害怕,我的手脚不停地发抖,但身体依然动弹不得。只能说,从短期来看剖腹产是非常爽的,起码不用忍受顺产的痛苦。但从长期来看,我有女性朋友说自己剖腹产后一直腰疼,而且记忆力明显下降了。

目前,我还没有出现这种情况,不过也是比较担心的。

一、全麻和半麻有何区别?

全麻就是全身麻醉,指整个身体都丧失感觉的麻醉。半麻就是局部麻醉,指身体局部丧失感觉的麻醉。

其实,医学专业术语上是没有"半麻"这个说法的,只有"全身麻醉"和"其他非全身麻醉方法",比如椎管内阻滞、局部神经阻滞等。

全麻和半麻的区别,在于以下几点:

1.全麻的适用范围广,几乎适用于所有手术;半麻的适用范围不包括颅脑外科手术、胸心外科手术等。

2.全麻可以保证长时间制动,病人在一次睡眠之后就可以完成手术;半麻的手术的过程中,病人意识是清醒的,可能会出现紧张、焦虑、害怕等心理,容易留下心理阴影。

3.全麻对呼吸和循环系统有一定的抑制作用,半麻对重要器官的正常功能影响较小

此外,全麻和半麻的价格也不一样。一般全麻的价格在3000-5000元之间,半麻的价格在1500-2000之间,全麻的费用约为半麻的2倍。

二、为什么剖腹产是半麻,人流是全麻?

那么,为什么剖腹产是半麻,人工流产是全麻呢?

如果剖腹产采用全麻,那么在手术的过程中产妇的意识会消失,完全感受不到痛苦,但可能会带来其他的"痛苦"。比如,麻醉药物会随着胎盘血流进入胎儿体内,导致胎儿也被麻醉,出生后会因呼吸不畅需要进行气管插管

此外,全麻时需要气管内插管,万一换气不好,产妇和胎儿都会有缺氧的风险。总之,剖腹产全麻不管是对于产妇还是对于胎儿都不利。为了规避风险,除特殊情况之外,医生一般不建议产妇选择全麻。

与全麻相比,半麻有明显的优势。半麻只是使产妇的腹部和下肢麻木,感觉不到疼痛,但意识还是清醒的,产妇可以参与生产过程,有利于建立良好的亲子感情。有些产妇会担心半麻可能造成腰部不适,但经过产后修复,多数人是可以缓解的。

至于人工流产为什么要全麻,主要是为了照顾病人的情绪

一般来说,做人工流产的病人心理都比较复杂,紧张、焦虑、害怕、羞愧等不良情绪容易影响手术的顺利进行,导致身体组织器官无法完全放松。因此,全麻既可以让病人毫无痛苦,又不留下难过的记忆。而且对于医生来说,人流手术的时间只需要几分钟,全麻更有利于手术的操作。

三、全麻会让人变傻变笨?

进行手术前,很多人会在选择麻醉方式上陷入纠结,担心全麻会让人变傻变笨,并能举出身边许多类似的例子。其实,医学对这方面也有研究,术后的记忆改变大多是因为"术后认知功能障碍"(POCD)。

术后认知功能障碍主要表现为日常行为困难、短期记忆退化、认知障碍性格改变、理解表达能力下降等。从理论上来说,全麻确实可能产生神经毒性机制,导致术后认知功能障碍。研究发现,全麻可能造成大脑功能长期改变,从而影响神经行为和认知水平,特别是婴幼儿和老年人,受全麻的影响比较大。

但需要明确的是,全麻不会使人变傻变笨。一方面,全麻手术的监护非常完善,可以全力保障患者安全,避免缺氧意外的发生。另一方面,麻醉中使用的药物可以在短时间被分解代谢,不会产生持续的影响。

不管是全麻还是半麻,只要操作规范,听从医生的指导,就不会对身体产生危害,患者大可以放心。

你有过全麻或半麻的经历吗?感受如何?


参考资料

[1]"全麻""半麻"孰优孰劣 .麻醉博物馆. 2016-06-28


[2]认知功能障碍与麻醉及手术有何关系?.基层麻醉网. 2019-09-17

[3]宋婷婷,赵平.全身麻醉与术后精神行为和认知改变研究进展[J].中国医师进修杂志,2018,41(10):947-952.

未经作者允许授权,禁止转载


原文转载:http://health.shaoqun.com/a/239189.html

跨境电商:https://www.ikjzd.com/

麦言:https://www.ikjzd.com/w/1456

沃尔码:https://www.ikjzd.com/w/220


核心提示:全麻就是全身麻醉,指整体丧失感觉的麻醉。半麻就是局部麻醉,指局部丧感觉的麻醉。其实,在医学术语上是没有"半麻"这个说法的,只有全身麻醉和其他非全身麻醉方法,比如椎管内阻滞、局部神经阻滞等。 如果你是一位孕妇,即将剖腹产了,会感到害怕吗?小九相信,准妈妈们的心里多多少少有些害怕的,除了担心出意外,更多的人是怕痛——毕竟剖腹产不是全麻,而是半麻,从一个网友的体验,我们就能了解一二。我是顺产转
败欧洲运费:https://www.ikjzd.com/w/1555
特许金融分析师:https://www.ikjzd.com/w/1396
环球华网:https://www.ikjzd.com/w/1063
每次吵完架老公都找前女友谈心:http://lady.shaoqun.com/a/272374.html
口述:男友命令我辞掉工作为他减肥:http://lady.shaoqun.com/m/a/19381.html
如何在亚马逊旺季中精准设置关键词?:https://www.ikjzd.com/home/133563

亚马逊Listing 优化之产品问答

1、什么是Q&A

Q&A即Customer Questions & Answers,是亚马逊里的一个版块,这个版块主要的目的是为用户提供一个Sellers与Buyers、Buyers与Buyers之间交流产品特性、功能、质量品质等问题的区域,主要以问答的模式进行。

2、Q&A的重要性

Q&A是Listing权重的重要影响因素,而不仅仅是标题、Search Terms和Review,Q&A在亚马逊Listing的商品详情页里占据很重要的位置,是买家购物的重要参考信息,对产品的转化率有很大的影响。

在Q&A里,一个问题可以有很多答案,Seller可以回答,Buyer也可以回答。

一般情况下,如果有三个以上的Q&A,就会被亚马逊自动置于产品Listing标题的下面,如果Q&A数量少于3个,就不会显示。

随着Review获取难,卖家想要保持Listing页面活跃就要从Q&A下手,而且Q&A的权重现在越来越高。一是亚马逊现在严查刷单行为,所以刷Review保持页面活跃度已经不现实。二是Q&A是保持Listing活跃度的最好板块,目前亚马逊对这部分没有进行严查。最后根据亚马逊的A9算法,Q&A是亚马逊对产品搜索排名的重要因素之一,在提高Listing页面的转化率起到很大的帮助。

3、Q&A功能

(1)关键词的Indexing收录功能。Q&A里面无论是问题和答案,里面所有的Keyword都是可以被亚马逊搜索引擎抓取收录到的。也就是说,除了传统的标题、五点描述、产品描述、后台关键词以外,Q&A问题和答案里面所有的Keyword也是可以被收录的,相当于我们又多了一个可以填词埋词的区域。你甚至可以在这个区域,试试大的品牌关键词,竞争对手的ASIN等等。

(2)转化。之前有说过,Q&A这一块很多Buyer在购买之前都会浏览一下。那么,如果特制一些问题岂不是对转化有很大的作用。比如这个产品最大的痛点就是防水,很多同类产品就是防水很难做好。那么我们就可以提个问题,这个产品防水怎么样,然后找一些Buyer账户外加Seller,一起回复这个产品防水非常好,各种好,这样对转化会有非常大的帮助作用。

通过产品的各种痛点做文章,结合痛点去制作相对应的Q&A,一般会收到很好的转化效果。这些操作最好是在产品新品上架初期的时候做,一方面可以辅助推广活动的进行,另一方面,可以防止真实的Buyer回答问题造成潜在的不利影响。

4、Q&A权重的提升方法

(1)增加Q&A数量,提升活跃度,促进转化:对于新品来说,增加Review和Q&A的数量都很重要,Q&A数量越多,活跃度越高,对Listing的转化就越有利。

(2)找买家提问、回答:试着找曾经刷单的买家去提问,并且找买家去回答,卖家自己的回答缺乏信服力。

(3)自问自答:卖家可以尝试注册买家账号进行自问自答,但一定要格外注意IP地址。

(4)确保问题和回答都含有产品主关键词:Q&A里的问题和答案中的关键词都有可能会被亚马逊自动抓取并收录,卖家可以通过搜索关键词的方式,对所有的Q&A进行分析归纳,整理出客户最想了解的问题以及客户的需求。然后针对这些问题对Listing乃至产品进行优化,提高转化率。

(5)置顶帖子、增加热度:挑选一两个重要的Q&A帖子,然后把帖子置顶(置顶的目的是让买家投票最高的帖子第一眼就能被顾客看到)、增加帖子热度,提升页面转化率。

5、注意事项

(1)卖家可以适量增加Q&A的数量,不管是问还是答,关键词铺设得越多越详细,匹配度也越高,让买家能够快速、准确地找到解决疑惑的答案。

(2)在Q&A里铺设关键词,要么不铺,要么就铺好,卖家可以通过分析竞争对手的流量来源关键词、产品最受关注的点的关键词、与产品相关的搜索指数大的关键词。

(3)非卖家才能回答的问题,一般是买家自己去提问和回答,可信度会高很多,卖家可以找曾经购买过该产品的买家,让他们通过邮件的方式去提问,然后同样地找买家去回答。

(4)如果卖家能够实现多IP注册不同的买家账号,可以使用多个买家账号配合,模仿真实买家去问答。

(5)配合申请的买家账号,在重要的Q&A前点击"Vote",将这些重要的Q&A置顶,通过增加对买家购买决策有重要影响的Q&A的曝光率,来提高转化率。

(6)卖家自己操作,或者让买家去问答,要控制好进度,不要一下子上太多,避免让亚马逊起怀疑。

(7)结合当下的热点创造一些话题,将高权重的关键词嵌入Q&A,吸引买家的二次提问和回答,并影响更多买家的购买决策。

(8)一般Listing上架以后前台显示可售,就可以上Question,这时候卖家可以自己回复,当有了销量以后再以买家身份进行回复。

(9)新品的话前期上3-7个左右,后期销量增加,流量增加,Review增加,可以继续再上几个。后期成熟一个Listing差不多有15个左右就可以了。

(10)一般三个以上的Q&A,会被亚马逊自动置于产品Listing标题的下面,低于3个,不会显示。

(11)切记前期产品没有销量不宜上太多,Q&A质量要高,要控制刷Q&A的节奏,和自己的销量等配合起来。虽然目前Q&A没有Review那么敏感,但是能避免还是避免。

(12)问题的答案不能删除,问题可以删除和修改,如果问题还没有人回复的话,提问者可以删除或者修改问题。

(13)如果已经有人回复了此问题,卖家则不可以删除或者修改,但是可以点击Comment追问,也可以点击Yes或No表示赞成和反对,又或者可以点击Report Abuse进行投诉。

(14)发现有负面的答案这种情况,要不赶紧补充一下回答,要不就多找几个人把问题给踩下去,避免让人看到。

6、禁止信息

· 垃圾信息,包括广告、竞赛、其他公司的网站推荐信息等;

· 为推销产品的重复性信息;

· 不能很好解决买家疑惑,反而是困扰、窘迫买家的信息;

· 鼓动买家去做非法、危险行为的信息;

· 侵犯他人隐私的信息;

· 诋毁活供给他人的信息。

7、亚马逊Q&A的优化

(1) 客户需求和痛点

Q&A是要回到买家最关心的问题,卖家可以调查竞争对手所有的Q&A,然后进行分析归纳,即可整理出客户最想了解到的问题以及客户的需求。

例如电子产品,主要功能是防水防潮,这就可以在Q&A中提现出来,然后再针对这些问题对Listing乃至产品进行优化,又可以在一定程度上提高转化。

(2)关键词

因为Q&A的所有的词都会被亚马逊自动抓取并收录到,所以除了在标题、卖点和描述中增加产品关键词外,Q&A中最好也要填入核心关键词,增加产品与关键词的相关性,当消费者搜索的时候就能立刻看到产品。

(3)Votes

卖家能够通过点赞或NO来操纵所有Q&A的上升和下降,如果得到正向的Votes越多,那么这个相应的Q&A就能升到第一页。所以,针对一些不利的Q&A,和一些有利的人为制作的Q&A,我们都可以通过Votes来优化一个相对合理得Q&A结构。


文章来源:https://www.ikjzd.com/home/144498

跨境电商:https://www.ikjzd.com/

联动优势电子商务:https://www.ikjzd.com/w/1921

aeo:https://www.ikjzd.com/w/2356

菜鸟网络:https://www.ikjzd.com/w/1547

亚马逊Listing 优化之产品问答

1、什么是Q&amp;AQ&amp;A即CustomerQuestions&amp;Answers,是亚马逊里的一个版块,这个版块主要的目的是为用户提供一个Sellers与Buyers、Buyers与Buyers之间交流产品特性、功能、质量品质等问题的区域,主要以问答的模式进行。2、Q&amp;A的重要性Q&amp;A是Listing权重的重要影响因素,而不仅仅是标题、SearchTerms和Re

产后头发掉一大把?5个方法可防治产后脱发

核心提示:不少妈妈生完孩子后会出现很多的产后后遗症,而产后脱发就是其中的一种,还有一部分的孕妈不仅会出现产后脱发,还会在产后2-6个月出现发色变黄,那么究竟产后是哪些因素导致脱发呢?产后脱发该怎么办?

宝宝出生后,妈妈的注意力都到宝宝的身体,但是产后孕妈的身体也会出现一些后遗症,而产后脱发就是孕妈最担心出现的产后后遗症之一,那么究竟是什么原因导致产后脱发了,能预防和治疗吗?

哪些原因会导致产后脱发?

1.产前产后的雌激素变化导致产后脱发

女性在孕期和孕后的雌性激素都会产生变化的,而女性在孕期的时候却是一生中雌激素最多的时候,因为雌激素的影响所以孕期的头发的状态也是比较好,可能一部分妈妈会感觉孕期的头发更加浓密,有光泽。但因为宝宝出生后,孕妇体内的雌激素就会慢慢的减少,直到恢复到孕前的水平,而在孕期的时候长出来的头发也会因为雌激素的突然下降而脱发,而新头发又还没有这么快长出来,就会让妈妈感觉产后脱发很明显了。

2.月子期没有好好洗头导致产后脱发

在孕期都多多少少了解到一些老一辈的人说的老观念坐月子,像是产后月子期不能洗澡、洗头发。随着时代进步,很多妈妈都知道这个做法是错误的,月子其实只要注意保暖是可以洗澡、洗头的、但是就是有一些妈妈还是听信了这些老观念,月子期的时候完全不洗头不洗澡,而长时间的不洗头会导致头皮产生很多的细菌,这个细菌是会影响头皮的血液循环的,很可能会诱发皮炎,就会加重产后脱发。

3.产后着急瘦身营养摄入不足导致脱发

产后妈妈的身体还是很虚弱的,分娩也耗损了孕妈大量的气血,这个时候是需要大量的补充营养。但是也有不少妈妈,特别是年轻的辣妈,想马上恢复到孕期的苗条身材,产后没多久就开始节食减肥,而这个时候妈妈不但要补充营养帮助身体恢复,也需要补充营养哺乳给宝宝,这个时候对营养的需求是很大的,身体还没有恢复就开始节食,很容易就会导致身体营养不良,营养不良也会导致头发的营养供给不足,不能正常代谢,就会出现产后脱发了。

4.产后经常熬夜导致脱发

新出生的宝宝是需要每隔几个小时就喂奶一次,导致很多妈妈在晚上也不能休息,一直忙着带宝宝,导致长期睡眠不足,熬夜到很晚才能睡。而睡眠不足也是导致产后脱发的一个重要因素,这是因为休息不足就会导致头皮生命循环周期加速,头发的毛囊还无法及时吸收头皮的营养,头发会越来越细软,很容易就会脱落了。

虽然产后脱发很大一部分因素是属于正常的产后现象,但是脱发是很影响外貌的,这也是很多妈妈的心中痛,那么有什么办法可以预防和治疗脱发了。

如何防治产后脱发?

1.多吃蛋白质等营养食物

头发之所以可以健康、黑亮、有光泽,都是需要体内蛋白质的滋养的,特别是孕妇产后身体比较虚弱,还需要哺乳给宝宝,体内的营养消耗的比较快,所以想要产后头发健康不脱发。产后一定要及时的多补充蛋白质,可以多吃瘦肉、鱼肉、鸡肉、牛奶、鸡蛋等。此外补充蛋白质的时候也要注意多摄入蔬菜和水果,保持营养均衡。

2.多吃健发的食物

除了上面提到的多吃蛋白质、蔬菜,孕妈也可以多吃之外,也可以选择有健发效果的食物,如菠菜、肝脏、蛋黄、海带等。

3.选用温和护发产品

产后头发护理也是很重要的,因为产后头发毛囊比较脆弱,所以可以选择孕妈专用的比较温和的洗护用品,但是也要选择适合自己发质的洗发水,如是偏油头皮,洗发水可选用清爽型,如是偏干头皮,洗发水可选用滋润型。

4.经常按摩头皮


经常按摩头皮也可以促进毛囊健康,让头发更加浓密有光泽,孕妈可以在洗发后吹干头发之后用梳子或者手指按摩头皮,但不要用指甲,用指腹按摩就可以了,这样的按摩能帮助头部的血液循环,让头发更加健康。

5.保持心情愉快

宝宝出生需要妈妈更多的精力去照顾,加上脱发的烦恼,很容易就会导致孕妈情绪烦闷,低落。新妈妈应学会放松自我,随时随地保持好心态,及时的缓解压力,或者多跟家人交流缓解低落烦躁的情绪。


原文转载:http://health.shaoqun.com/a/239187.html

跨境电商:https://www.ikjzd.com/

敦煌网:https://www.ikjzd.com/w/189

欧苏丹:https://www.ikjzd.com/w/1756


核心提示:不少妈妈生完孩子后会出现很多的产后后遗症,而产后脱发就是其中的一种,还有一部分的孕妈不仅会出现产后脱发,还会在产后2-6个月出现发色变黄,那么究竟产后是哪些因素导致脱发呢?产后脱发该怎么办? 宝宝出生后,妈妈的注意力都到宝宝的身体,但是产后孕妈的身体也会出现一些后遗症,而产后脱发就是孕妈最担心出现的产后后遗症之一,那么究竟是什么原因导致产后脱发了,能预防和治疗吗?哪些原因会导致产后脱发?
eprice:https://www.ikjzd.com/w/1325
笨鸟转运:https://www.ikjzd.com/w/1550
海维:https://www.ikjzd.com/w/1891
亚马逊FBA卖家时间表:1-12月常规注意事项及节日提醒:https://www.ikjzd.com/home/124735
老公情人节谎称出差赴外地约会:http://lady.shaoqun.com/a/270468.html
女友来访 看见红颜知己躺我床上:http://lady.shaoqun.com/m/a/272696.html

西甲-梅西破门难救主 巴萨1-2遭逆转错失登顶机会_格拉纳达

原标题:西甲-梅西破门难救主 巴萨1-2遭逆转错失登顶机会

北京时间4月30日凌晨1点,20/21赛季西甲第33轮迎来一场补赛。在诺坎普球场,巴塞罗那主场1-2被格拉纳达逆转,继续落后马竞2分排名第三。梅西为巴萨首开纪录,马奇斯利用明格萨的失误扳平比分,替补出场的莫利纳为格拉纳达打进制胜球,巴萨主帅科曼被罚下。

在西甲历史上,两队共交锋49次,巴萨39胜4平6负,得失球为129比43。在主场,巴萨24战全胜,得失球为87比18。在本赛季中,两队此前交锋过两次。在联赛中,巴萨客场4-0大胜格拉纳达。在国王杯中,巴萨在客场0-2落后的情况下终场前连追两球,并在加时赛中最终以5-3的总比分逆转晋级。布莱斯维特、库蒂尼奥和法蒂因伤休战,马修斯因技术原因落选大名单。

第9分钟德容禁区右侧横传被解围,阿尔巴禁区弧顶右脚劲射被后卫挡出底线。19分钟梅西中路背身回敲,格列兹曼禁区弧内左脚大力低射被扑,1分钟后索尔达多中场背后铲倒格列兹曼被黄牌警告。24分钟格列兹曼中路拉球转身后直传,梅西禁区左侧左脚大力低射远角破门。1-0,巴萨首开纪录!

25分钟埃雷拉抢断布斯克茨后,突破至禁区中路左脚低射,皮球偏出右侧门柱。36分钟布斯克茨中场挑传,梅西禁区右侧左脚单刀推射远角,皮球被埃斯坎德里一扑后滑门而过。格列兹曼左侧角球传中,乌姆蒂蒂禁区中路头球射门被扑。43分钟内胡恩-佩雷斯中场拉拽梅西被黄牌警告。

47分钟莫里巴禁区左侧横传,格列兹曼点球点左侧右脚转身大力推射滑门而过。53分钟梅西直传,德容禁区左侧传中,塞尔吉-罗贝托点球点右侧右脚凌空垫射高出横梁。格拉纳达用莫利纳和戈纳隆斯换下索尔达多和埃特吉,63分钟路易斯-苏亚雷斯右路直传,明格萨中路拦截失误,马奇斯禁区左侧单刀低射近角破门。1-1,格拉纳达扳平比分!

66分钟巴萨主帅科曼被直接红牌罚下。

随后,巴萨用登贝莱和佩德里换下明格萨和莫里巴,格拉纳达用马林换下马奇斯。78分钟梅西禁区弧顶左脚任意球射门击中人墙,格列兹曼禁区左侧横传,皮克前点脚后跟射门滑门而过。79分钟马林左路传中,莫利纳左侧小禁区前头球破门。2-1,格拉纳达反超比分!

随后,巴萨用特林康换下布斯克茨,格拉纳达用维科换下路易斯-苏亚雷斯。89分钟热尔曼抗议判罚被黄牌警告,94分钟马林铲倒梅西被黄牌警告。

双方出场阵容:

巴塞罗那(3-5-2):1-特尔施特根/28-明格萨(72'11-登贝莱)、3-皮克、23-乌姆蒂蒂/20-塞尔吉-罗贝托、21-德容、5-布斯克茨(81'17-特林康)、27-莫里巴(72'16-佩德里)、18-阿尔巴/10-梅西、7-格列兹曼

格拉纳达(3-4-2-1):13-埃斯坎德里/3-内胡恩-佩雷斯、6-热尔曼、16-维克托-迪亚兹/2-福尔基耶、21-埃雷拉、8-埃特吉(61'4-戈纳隆斯)、17-基尼/7-路易斯-苏亚雷斯(86'14-维科)、11-马奇斯(75'18-马林)/9-索尔达多(61'23-莫利纳)

双方技术统计:

返回搜狐,查看更多

责任编辑:

原文转载:http://sport.shaoqun.com/a/574772.html

跨境电商:https://www.ikjzd.com/

万国邮政联盟:https://www.ikjzd.com/w/861

易联通:https://www.ikjzd.com/w/1854.html


原标题:西甲-梅西破门难救主巴萨1-2遭逆转错失登顶机会北京时间4月30日凌晨1点,20/21赛季西甲第33轮迎来一场补赛。在诺坎普球场,巴塞罗那主场1-2被格拉纳达逆转,继续落后马竞2分排名第三。梅西为巴萨首开纪录,马奇斯利用明格萨的失误扳平比分,替补出场的莫利纳为格拉纳达打进制胜球,巴萨主帅科曼被罚下。在西甲历史上,两队共交锋49次,巴萨39胜4平6负,得失球为129比43。在主场,巴萨24战
upc:https://www.ikjzd.com/w/111
epa认证:https://www.ikjzd.com/w/1769
livingsocial:https://www.ikjzd.com/w/714.html
小舅子媳妇用胸撩拨 与我激情缠绵(2/2):http://www.30bags.com/m/a/249584.html
虾皮(Shopee)跨境电商,新手选品小tip!:https://www.ikjzd.com/home/109768
CapBridge:https://www.ikjzd.com/w/2502